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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x118
push ebx
push ebp
push esi
push edi
mov ebp, ecx
xor edx, edx
call fcn.100e1800
test eax, eax
jne 0x100e8056
push dword [ebp + 0xe0]
xor ebx, ebx
mov dword [esp + 0x3c], eax
push str.SELECT__s
mov dword [esp + 0x44], eax
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x3c], eax
call fcn.100212d0
mov esi, eax
add esp, 8
test esi, esi
jne 0x100e76ea
mov edi, 7
mov dword [esp + 0x18], edi
jmp 0x100e7f1f
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x14]
push 0
push eax
push 0
push 0x80
push 0xffffffffffffffff
mov edx, esi
call fcn.100931a0
mov edi, eax
add esp, 0x14
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], edi
cmp dword [0x10165af8], ebx
je 0x100e775e
mov eax, dword [0x10168b40]
test eax, eax
je 0x100e772c
push eax
call dword [0x10165b48]
add esp, 4
push esi
call dword [0x10165b24]
sub dword [0x101689c8], eax
add esp, 4
dec dword [0x101689ec]
push esi
call dword [0x10165b1c]
mov eax, dword [0x10168b40]
add esp, 4
test eax, eax
je 0x100e7768
push eax
call dword [0x10165b50]
jmp 0x100e7765
push esi
call dword [0x10165b1c]
add esp, 4
test edi, edi
jne 0x100e7f1b
mov eax, dword [ebp + 0x18]
mov ecx, 0xc
imul ecx
mov esi, eax
mov edi, edx
add esi, ecx
adc edi, ebx
call fcn.100cac40
test eax, eax
je 0x100e77a5
mov ebx, dword [esp + 0x14]
xor eax, eax
mov edi, 7
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], edi
mov esi, eax
jmp 0x100e7f21
push edi
push esi
call fcn.1001e110
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x100e77cb
mov ebx, dword [esp + 0x14]
mov edi, 7
mov dword [esp + 0x18], edi
mov esi, eax
jmp 0x100e7f21
push esi
mov esi, dword [esp + 0x20]
push 0
push esi
call fcn.1012a970
mov ecx, dword [ebp + 0x18]
add esp, 0xc
mov ebx, dword [esp + 0x14]
shl ecx, 2
lea eax, [ecx + esi]
lea edx, [eax + 4]
add eax, 8
add eax, ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
nop dword [eax + eax]
xor edi, edi
test ebx, ebx
je 0x100e7ee8
cmp dword [ebx], edi
jne 0x100e7822
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.10021490
add esp, 8
lea eax, [edi + 1]
jmp 0x100e7824
xor eax, eax
test eax, eax
jne 0x100e7ef7
mov eax, dword [ebx]
mov dword [esp + 0x14], eax
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7843
push eax
call dword [0x10165b48]
add esp, 4
mov ecx, ebx
call fcn.100498d0
mov esi, eax
cmp esi, 0x11
jne 0x100e7a60
mov ecx, edi
inc edi
mov dword [esp + 0x24], edi
cmp ecx, 0x32
jge 0x100e7a60
mov eax, dword [ebx + 0x20]
lea ecx, [esp + 0x30]
mov esi, dword [ebx]
mov edx, dword [ebx + 0xc8]
push 0
push ecx
mov dword [esp + 0x30], eax
mov ecx, esi
movzx eax, byte [ebx + 0x94]
push ebx
push eax
push 0xffffffffffffffff
call fcn.100931a0
mov edi, eax
add esp, 0x14
test edi, edi
jne 0x100e7996
mov esi, dword [esp + 0x30]
lea edi, [esp + 0x40]
mov ecx, 0x3a
mov edx, ebx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x30]
mov ecx, 0x3a
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x3a
lea esi, [esp + 0x40]
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov esi, dword [esp + 0x30]
mov eax, dword [ebx + 8]
mov ecx, dword [esi + 8]
mov dword [esi + 8], eax
mov eax, dword [ebx + 4]
mov dword [ebx + 8], ecx
mov ecx, dword [esi + 4]
mov dword [esi + 4], eax
mov eax, dword [ebx + 0xc8]
mov dword [ebx + 4], ecx
mov ecx, dword [esi + 0xc8]
mov dword [esi + 0xc8], eax
mov dword [ebx + 0xc8], ecx
mov ecx, esi
mov eax, dword [esi + 0xdc]
mov dword [ebx + 0xdc], eax
mov al, byte [esi + 0x94]
mov byte [ebx + 0x94], al
movups xmm0, xmmword [esi + 0xa4]
movups xmmword [ebx + 0xa4], xmm0
movups xmm0, xmmword [esi + 0xb4]
movups xmmword [ebx + 0xb4], xmm0
mov eax, dword [esi + 0xc4]
mov dword [ebx + 0xc4], eax
inc dword [ebx + 0xb8]
call fcn.1004b9c0
mov dword [esi + 0x24], 0
cmp byte [esi + 0x95], 1
jb 0x100e795d
mov ecx, esi
call fcn.10046900
mov ecx, esi
call fcn.100469e0
push ebx
call fcn.10048b40
add esp, 4
cmp dword [esp + 0x28], 0
jl 0x100e797b
mov byte [ebx + 0x93], 0xfe
mov ecx, ebx
call fcn.100498d0
mov esi, eax
cmp esi, 0x11
jne 0x100e7a60
mov edi, dword [esp + 0x24]
jmp 0x100e7855
cmp edi, 7
jne 0x100e79a2
mov ecx, esi
call fcn.1001eb60
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x124]
test ecx, ecx
jne 0x100e79b4
xor esi, esi
jmp 0x100e79e7
movzx edx, word [ecx + 0x10]
mov eax, edx
and eax, 0x202
cmp eax, 0x202
jne 0x100e79d1
cmp byte [ecx + 0x12], 1
jne 0x100e79d1
mov esi, dword [ecx + 8]
jmp 0x100e79e3
test dl, 1
je 0x100e79da
xor esi, esi
jmp 0x100e79e3
mov dl, 1
call fcn.10043350
mov esi, eax
mov eax, dword [esp + 0x14]
mov edx, dword [ebx + 0x7c]
test edx, edx
je 0x100e79f5
mov ecx, eax
call fcn.1001e3f0
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x57], 0
jne 0x100e7aea
test esi, esi
jne 0x100e7a0b
xor eax, eax
jmp 0x100e7a4d
mov ecx, esi
lea eax, [ecx + 1]
mov dword [esp + 0x28], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100e7a14
sub ecx, dword [esp + 0x28]
push 0
lea eax, [ecx + 1]
mov ecx, edx
push eax
mov dword [esp + 0x30], eax
call fcn.1001e890
add esp, 8
mov dword [esp + 0x24], eax
test eax, eax
je 0x100e7a4d
push dword [esp + 0x28]
push esi
push eax
call fcn.1012be10
mov eax, dword [esp + 0x30]
add esp, 0xc
mov ecx, dword [esp + 0x14]
mov edx, edi
mov dword [ebx + 0x7c], eax
call fcn.1001ec40
mov esi, eax
mov dword [ebx + 0x24], esi
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0xc]
test eax, eax
je 0x100e7a75
push eax
call dword [0x10165b50]
add esp, 4
cmp esi, 0x64
jne 0x100e7ede
cmp dword [ebp + 0x2c], 0
mov dword [esp + 0x14], 0
je 0x100e7a9e
mov eax, dword [ebp + 0x18]
inc eax
push eax
push ebx
call fcn.1004a650
add esp, 8
mov dword [esp + 0x14], eax
mov ecx, dword [ebx]
mov ecx, dword [ecx + 0xc]
test ecx, ecx
je 0x100e7ab1
push ecx
call dword [0x10165b48]
add esp, 4
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x100e7ac3
xor eax, eax
cmp ax, word [ebx + 0x90]
jb 0x100e7adb
mov ecx, dword [ebx]
mov edx, 0x19
mov dword [ecx + 0x40], 0x19
call fcn.10022010
mov ecx, 0x10151958
movzx eax, word [ecx + 0x10]
test al, 0x24
je 0x100e7afe
mov esi, dword [ecx]
mov edi, dword [ecx + 4]
jmp 0x100e7b37
mov esi, 7
mov dword [ebx + 0x7c], 0
mov dword [ebx + 0x24], esi
jmp 0x100e7a64
test al, 8
je 0x100e7b11
movsd xmm0, qword [ecx]
call fcn.10042660
mov esi, eax
mov edi, edx
jmp 0x100e7b37
test al, 0x12
je 0x100e7b26
cmp dword [ecx + 8], 0
je 0x100e7b26
call fcn.10042690
mov esi, eax
mov edi, edx
jmp 0x100e7b37
xorps xmm0, xmm0
movlpd qword [esp + 0x28], xmm0
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x24]
mov dword [esp + 0x18], edi
cmp byte [ecx + 0x57], 0
jne 0x100e7b4e
test edx, edx
jne 0x100e7b4e
xor eax, eax
jmp 0x100e7b53
call fcn.1001ec40
mov dword [ebx + 0x24], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7b69
push eax
call dword [0x10165b50]
add esp, 4
mov ecx, dword [ebp + 0x114]
mov eax, dword [ebp + 0x110]
cmp edi, ecx
jl 0x100e7baa
jg 0x100e7b7f
cmp esi, eax
jb 0x100e7baa
cmp esi, eax
jne 0x100e7b90
cmp edi, ecx
jne 0x100e7b90
cmp dword [ebp + 0x11c], 0
je 0x100e7baa
mov eax, dword [esp + 0x14]
cmp dword [ebp + 0x118], eax
jne 0x100e7baa
mov eax, dword [ebp + 0x10c]
cmp eax, dword [ebp + 0x108]
jle 0x100e7bbf
mov ecx, ebp
call fcn.100e6440
mov edi, eax
mov dword [esp + 0x20], edi
test edi, edi
jne 0x100e7be5
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov dword [ebp + 0x114], edi
xor edi, edi
mov dword [ebp + 0x110], esi
mov dword [ebp + 0x118], eax
mov dword [ebp + 0x11c], 0
mov dword [esp + 0x20], edi
mov eax, dword [ebp + 0x18]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x18], edi
lea eax, [eax*4 + 4]
push eax
push 0
push esi
call fcn.1012a970
add esp, 0xc
test edi, edi
jne 0x100e7dee
mov eax, dword [esp + 0x1c]
mov esi, 0x28
mov ecx, dword [esp + 0x20]
mov edi, 1
mov dword [esp + 0x28], esi
mov dword [esp + 0x24], eax
nop word [eax + eax]
lea edx, [edi - 1]
cmp edx, dword [ebp + 0x18]
jge 0x100e7de6
mov eax, dword [ebp + 0x20]
cmp byte [edx + eax], 0
jne 0x100e7dd1
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7c5c
push eax
call dword [0x10165b48]
add esp, 4
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x100e7c7a
movzx eax, word [ebx + 0x90]
cmp edi, eax
jge 0x100e7c7a
test edi, edi
js 0x100e7c7a
add ecx, esi
jne 0x100e7c92
xor esi, esi
jmp 0x100e7cc1
mov ecx, dword [ebx]
mov edx, 0x19
mov dword [ecx + 0x40], 0x19
call fcn.10022010
mov ecx, 0x10151958
movzx edx, word [ecx + 0x10]
mov eax, edx
and eax, 0x202
cmp eax, 0x202
jne 0x100e7caf
cmp byte [ecx + 0x12], 1
jne 0x100e7caf
mov esi, dword [ecx + 8]
jmp 0x100e7cc1
test dl, 1
je 0x100e7cb8
xor esi, esi
jmp 0x100e7cc1
mov dl, 1
call fcn.10043350
mov esi, eax
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x24]
cmp byte [ecx + 0x57], 0
jne 0x100e7cd4
test edx, edx
jne 0x100e7cd4
xor eax, eax
jmp 0x100e7cd9
call fcn.1001ec40
mov dword [ebx + 0x24], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7cef
push eax
call dword [0x10165b50]
add esp, 4
push dword [esp + 0x24]
mov edx, dword [esp + 0x18]
lea eax, [edi - 1]
push eax
push esi
mov ecx, ebp
call fcn.100e13b0
mov dword [esp + 0x2c], eax
add esp, 0xc
mov dword [esp + 0x18], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7d21
push eax
call dword [0x10165b48]
add esp, 4
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x100e7d3d
movzx eax, word [ebx + 0x90]
cmp edi, eax
jge 0x100e7d3d
test edi, edi
js 0x100e7d3d
add ecx, dword [esp + 0x28]
jmp 0x100e7d55
mov ecx, dword [ebx]
mov edx, 0x19
mov dword [ecx + 0x40], 0x19
call fcn.10022010
mov ecx, 0x10151958
movzx eax, word [ecx + 0x10]
test al, 2
je 0x100e7d68
cmp byte [ecx + 0x12], 1
jne 0x100e7d68
mov esi, dword [ecx + 0xc]
jmp 0x100e7d91
test al, 0x10
je 0x100e7d80
mov edx, dword [ecx + 0xc]
test eax, 0x400
je 0x100e7d7c
mov esi, dword [ecx]
add esi, edx
jmp 0x100e7d91
mov esi, edx
jmp 0x100e7d91
test al, 1
je 0x100e7d88
xor esi, esi
jmp 0x100e7d91
mov dl, 1
call fcn.10043a90
mov esi, eax
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x24]
cmp byte [ecx + 0x57], 0
jne 0x100e7da4
test edx, edx
jne 0x100e7da4
xor eax, eax
jmp 0x100e7da9
call fcn.1001ec40
mov dword [ebx + 0x24], eax
mov eax, dword [ebx]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x100e7dbf
push eax
call dword [0x10165b50]
add esp, 4
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebp + 0x18]
add dword [ecx + eax*4], esi
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
add dword [esp + 0x24], 4
add esi, 0x28
inc edi
mov dword [esp + 0x28], esi
test ecx, ecx
je 0x100e7c30
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
cmp byte [ebp + 0xee], 0
je 0x100e7e0e
push esi
mov edx, ebp
lea ecx, [esp + 0x1c]
call fcn.100e69b0
mov edi, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x20], edi
test edi, edi
jne 0x100e7e3f
inc dword [esp + 0x34]
xor edx, edx
cmp dword [ebp + 0x18], edx
jl 0x100e7800
mov ecx, dword [esp + 0x38]
sub esi, ecx
mov eax, dword [esi + ecx]
lea ecx, [ecx + 4]
add dword [ecx - 4], eax
inc edx
cmp edx, dword [ebp + 0x18]
jle 0x100e7e27
mov esi, dword [esp + 0x1c]
jmp 0x100e7800
mov esi, dword [ebx]
test esi, esi
jne 0x100e7e7a
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.10021490
push 0x10156d84
push 0x1572f
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021490
mov esi, dword [esp + 0x38]
add esp, 0x1c
xor ebx, ebx
jmp 0x100e7f21
mov eax, dword [esi + 0xc]
test eax, eax
je 0x100e7e8b
push eax
call dword [0x10165b48]
add esp, 4
cmp dword [ebx + 0x8c], 0
jl 0x100e7ea8
jg 0x100e7e9f
cmp dword [ebx + 0x88], 0
jbe 0x100e7ea8
mov edx, ebx
mov ecx, esi
call fcn.100489a0
mov ecx, ebx
call fcn.10046900
mov ecx, ebx
mov dword [esp + 0x30], eax
call fcn.100469e0
cmp byte [esi + 0x57], 0
mov edx, dword [esp + 0x30]
jne 0x100e7ec8
test edx, edx
je 0x100e7ecf
mov ecx, esi
call fcn.1001ec40
mov ecx, esi
call fcn.100cbf40
mov esi, dword [esp + 0x1c]
xor ebx, ebx
jmp 0x100e7f21
mov edi, dword [esp + 0x20]
mov esi, dword [esp + 0x1c]
jmp 0x100e7f21
push str.API_called_with_NULL_prepared_statement
push 0x15
call fcn.10021490
add esp, 8
push 0x10156d84
push 0x159e1
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021490
mov edi, dword [esp + 0x34]
add esp, 0x14
jmp 0x100e7f21
mov ebx, dword [esp + 0x14]
xor esi, esi
cmp byte [ebp + 0xec], 0
je 0x100e7f49
push dword [esp + 0x34]
mov edx, dword [esp + 0x3c]
lea ecx, [esp + 0x1c]
push dword [esp + 0x40]
push edx
mov edx, ebp
call fcn.100e6ba0
mov edi, dword [esp + 0x24]
add esp, 0xc
test esi, esi
je 0x100e7fa5
cmp dword [0x10165af8], 0
je 0x100e7f9b
mov eax, dword [0x10168b40]
test eax, eax
je 0x100e7f69
push eax
call dword [0x10165b48]
add esp, 4
push esi
call dword [0x10165b24]
sub dword [0x101689c8], eax
add esp, 4
dec dword [0x101689ec]
push esi
call dword [0x10165b1c]
mov eax, dword [0x10168b40]
add esp, 4
test eax, eax
je 0x100e7fa5
push eax
call dword [0x10165b50]
jmp 0x100e7fa2
push esi
call dword [0x10165b1c]
add esp, 4
test ebx, ebx
je 0x100e8054
mov esi, dword [ebx]
test esi, esi
jne 0x100e7ff1
push str.API_called_with_finalized_prepared_statement
push 0x15
call fcn.10021490
push 0x10156d84
push 0x1572f
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call fcn.10021490
add esp, 0x1c
mov ebx, 0x15
test edi, edi
cmove edi, ebx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0xc]
test eax, eax
je 0x100e8002
push eax
call dword [0x10165b48]
add esp, 4
cmp dword [ebx + 0x8c], 0
jl 0x100e801f
jg 0x100e8016
cmp dword [ebx + 0x88], 0
jbe 0x100e801f
mov edx, ebx
mov ecx, esi
call fcn.100489a0
mov ecx, ebx
call fcn.10046900
mov ecx, ebx
mov ebp, eax
call fcn.100469e0
cmp byte [esi + 0x57], 0
jne 0x100e803d
test ebp, ebp
jne 0x100e803d
xor ebx, ebx
jmp 0x100e8048
mov edx, ebp
mov ecx, esi
call fcn.1001ec40
mov ebx, eax
mov ecx, esi
call fcn.100cbf40
test edi, edi
cmove edi, ebx
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret