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

Disassembly:
sub esp, 0x78
push ebp
mov ebp, dword [esp + 0x80]
xorps xmm0, xmm0
push esi
push edi
push 6
test dword [ebp + 0x13c], 0x400
mov esi, dword [ebp]
mov eax, dword [esi + 0x1c]
mov dword [esp + 0x18], eax
movups xmmword [esp + 0x6c], xmm0
mov dword [esp + 0x84], 0
movq qword [esp + 0x7c], xmm0
movups xmmword [esp + 0x34], xmm0
mov dword [esp + 0x4c], 0
movq qword [esp + 0x44], xmm0
je 0x101028a3
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x70]
push eax
push ebp
call fcn.100ecd90
jmp 0x101028c6
mov eax, dword [esi + 0x12c]
cmp dword [eax + 0x14], 0
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x70]
push eax
push ebp
je 0x101028c1
call fcn.100de0f0
jmp 0x101028c6
call fcn.10103c70
mov edi, eax
add esp, 0x10
test edi, edi
je 0x101028d6
pop edi
pop esi
pop ebp
add esp, 0x78
ret
mov ecx, dword [esi + 0x120]
mov dword [esp + 0x18], ecx
push ebx
test ecx, ecx
je 0x10102d7b
nop dword [eax]
test dword [ebp + 0x13c], 0x100
mov edx, dword [ecx]
mov ebx, dword [ecx + 4]
mov dword [esp + 0x30], edx
mov eax, dword [edx + 0x118]
mov dword [esp + 0x20], eax
jne 0x10102942
mov eax, dword [ebp + 8]
test byte [eax + 0x9c], 1
jne 0x10102942
cmp dword [eax + 0x70], 0
je 0x10102942
test bl, 1
jne 0x10102942
xor esi, esi
mov dword [esp + 0x2c], 0x1011
mov dword [esp + 0x24], 0x101b
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
jmp 0x10102969
mov esi, ebx
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x2c], 0x11
mov dword [esp + 0x24], 0x1b
and esi, 1
jne 0x101029e8
mov eax, dword [esp + 0x18]
test byte [eax + 0x9c], 1
je 0x101029e8
mov eax, dword [eax]
test byte [eax + 0x114], 2
jne 0x101029e8
push 8
lea eax, [esp + 0x14]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edx
call fcn.100e2ad0
mov ebp, ebx
add esp, 0x14
mov edi, eax
and ebp, 4
je 0x10102a46
test edi, edi
jne 0x10102d6a
mov ecx, dword [esp + 0x8c]
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x24]
push dword [ecx + 0x84]
push edi
push edi
push dword [eax + 0x20]
push dword [ecx + 0x10]
push dword [ecx + 0xc]
push eax
call fcn.10100cd0
mov edi, eax
add esp, 0x20
mov eax, dword [esp + 0x14]
or dword [eax + 0x13c], 0x40000
jmp 0x10102a46
lea eax, [esp + 0x10]
push eax
push dword [ebp + 0x84]
push 0
push 0
push dword [edx + 0x20]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edx
call fcn.10100cd0
mov ebp, ebx
add esp, 0x20
mov edi, eax
and ebp, 4
je 0x10102a46
test edi, edi
jne 0x10102d6a
mov ecx, dword [esp + 0x8c]
lea eax, [esp + 0x14]
push eax
mov eax, dword [esp + 0x24]
push dword [ecx + 0x84]
push edi
push edi
push dword [eax + 0x20]
push dword [ecx + 0x10]
push dword [ecx + 0xc]
push eax
call fcn.10100cd0
add esp, 0x20
mov edi, eax
test edi, edi
jne 0x10102d6a
mov eax, dword [esp + 0x18]
test byte [eax + 0x9c], 1
je 0x10102a8a
mov eax, dword [eax]
test byte [eax + 0x114], 2
je 0x10102a8a
mov eax, dword [esp + 0x10]
or dword [eax + 0x13c], 0x40000
test ebp, ebp
je 0x10102a8a
mov eax, dword [esp + 0x14]
test eax, eax
je 0x10102a8a
or dword [eax + 0x13c], 0x40000
push dword [esp + 0x24]
lea eax, [esp + 0x38]
mov dword [esp + 0x6c], 0
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x54], 0
push eax
lea eax, [esp + 0x78]
xorps xmm0, xmm0
push eax
push dword [esp + 0x20]
movups xmmword [esp + 0x64], xmm0
movq qword [esp + 0x74], xmm0
movups xmmword [esp + 0x48], xmm0
movq qword [esp + 0x58], xmm0
call fcn.101047d0
mov edi, eax
add esp, 0x14
cmp edi, 0xffff86f4
jne 0x10102b10
push dword [esp + 0x10]
call fcn.10102280
add esp, 4
mov edi, eax
test ebp, ebp
je 0x10102cf2
push dword [esp + 0x14]
call fcn.10102280
add esp, 4
test eax, eax
je 0x10102cf2
pop ebx
mov edi, eax
pop edi
pop esi
pop ebp
add esp, 0x78
ret
test edi, edi
jne 0x10102d44
test esi, esi
jne 0x10102d24
and ebx, 2
test ebx, ebx
je 0x10102b49
push 0
push dword [esp + 0x14]
call fcn.10102680
mov esi, eax
add esp, 8
test esi, esi
je 0x10102c38
push str.Attempt_to_execute_cascading_delete_in_a_foreign_index_failed
jmp 0x10102cae
test ebp, ebp
je 0x10102c38
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
lea eax, [esp + 0x70]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x5c]
push eax
mov eax, dword [esp + 0x2c]
push dword [esp + 0x40]
mov eax, dword [eax + 8]
call eax
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x10102ca9
cmp dword [esp + 0x28], eax
je 0x10102c38
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 8]
mov edi, dword [esi]
test byte [ecx + 0x9c], 1
je 0x10102be4
mov eax, dword [esi + 0x13c]
test eax, 0x60000
je 0x10102c8c
test eax, 0x20000
je 0x10102be4
lea eax, [esi + 0xc0]
push eax
push 2
lea eax, [esi + 0x88]
push eax
push 0x10
push dword [esi + 0x84]
push ecx
call fcn.100f4230
add esp, 0x18
test eax, eax
jne 0x10102c9f
cmp dword [edi + 0x104], 0
je 0x10102c0a
push 0xd
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x58]
push eax
push esi
call fcn.10105110
add esp, 0x10
test eax, eax
jne 0x10102c9f
mov eax, dword [edi + 0x12c]
push 0xd
cmp dword [eax + 0x14], 0
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x58]
push eax
push esi
je 0x10102c2a
call fcn.100e0f20
jmp 0x10102c2f
call fcn.101045a0
add esp, 0x10
mov esi, eax
test eax, eax
jne 0x10102ca1
push dword [esp + 0x2c]
lea eax, [esp + 0x38]
mov dword [esp + 0x6c], 0
push eax
lea eax, [esp + 0x58]
mov dword [esp + 0x54], 0
push eax
lea eax, [esp + 0x78]
xorps xmm0, xmm0
push eax
push dword [esp + 0x20]
movups xmmword [esp + 0x64], xmm0
movq qword [esp + 0x74], xmm0
movups xmmword [esp + 0x48], xmm0
movq qword [esp + 0x58], xmm0
call fcn.101047d0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x10102b23
jmp 0x10102cbc
push str.Write_attempted_on_read_only_cursor
push ecx
call fcn.100d0920
add esp, 8
mov eax, 1
mov esi, eax
push str.Attempt_to_overwrite_item_in_foreign_database_with_nullified_value_failed
push eax
jmp 0x10102caf
push str.Foreign_database_application_callback
push esi
mov eax, dword [esp + 0x20]
push eax
call fcn.100d0600
add esp, 0xc
push dword [esp + 0x10]
xor edi, edi
cmp esi, 0xffff86f4
cmovne edi, esi
mov esi, edi
call fcn.10102280
add esp, 4
test eax, eax
je 0x10102cde
test esi, esi
cmove edi, eax
test ebp, ebp
je 0x10102cf2
push dword [esp + 0x14]
call fcn.10102280
add esp, 4
test eax, eax
jne 0x10102d15
test edi, edi
jne 0x10102d7b
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx + 0xc]
mov dword [esp + 0x1c], ecx
test ecx, ecx
je 0x10102d7b
mov ebp, dword [esp + 0x8c]
jmp 0x101028f0
test edi, edi
pop ebx
cmove edi, eax
mov eax, edi
pop edi
pop esi
pop ebp
add esp, 0x78
ret
push dword [esp + 0x10]
call fcn.10102280
add esp, 4
mov ecx, 0xffff86eb
test eax, eax
cmovne ecx, eax
pop ebx
pop edi
pop esi
mov eax, ecx
pop ebp
add esp, 0x78
ret
push dword [esp + 0x10]
call fcn.10102280
add esp, 4
test ebp, ebp
je 0x10102d7b
push dword [esp + 0x14]
call fcn.10102280
add esp, 4
mov eax, edi
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x78
ret
mov eax, dword [esp + 0x10]
test eax, eax
je 0x10102d7b
push eax
call fcn.10102280
add esp, 4
pop ebx
mov eax, edi
pop edi
pop esi
pop ebp
add esp, 0x78
ret