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

Disassembly:
sub esp, 0x88
push ebx
push esi
xor ebx, ebx
mov dword [esp + 0x1c], 0
push edi
mov edi, dword [esp + 0x98]
xor eax, eax
mov dword [esp + 0x54], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x28], ebx
mov esi, dword [edi]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x34], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x48], esi
cmp dword [edi + 0x24], eax
jne 0x1003ec0b
cmp byte [esi + 0x51], al
jne 0x1003ec0b
push ebp
push dword [esp + 0xa0]
push edi
call fcn.10058b70
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x1003ec0a
push ebx
push ebx
push 0x79
push ebp
push edi
call fcn.10059980
mov ecx, eax
add esp, 0x14
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x64], ecx
mov dword [esp + 0x50], eax
test ecx, ecx
jne 0x1003e4a6
push ecx
push ecx
push ebp
push edi
call fcn.10046790
add esp, 0x10
mov dword [esp + 0x14], ebx
test eax, eax
je 0x1003e4ae
mov dword [esp + 0x14], 1
push ebp
push edi
call fcn.10068020
add esp, 8
test eax, eax
jne 0x1003ec0a
cmp dword [esp + 0x64], eax
setne al
push eax
push ebp
push edi
call fcn.1004b900
add esp, 0xc
test eax, eax
jne 0x1003ec0a
push dword [ebp + 0x48]
push esi
call fcn.10055670
mov ecx, eax
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0x10]
add ecx, ecx
push dword [eax + ecx*8]
push 0
push dword [ebp]
push 9
push edi
call fcn.10036c80
add esp, 0x1c
mov dword [esp + 0x30], eax
cmp eax, 1
je 0x1003ec0a
mov ecx, dword [esp + 0xa0]
xor edx, edx
mov eax, dword [edi + 0x28]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x3c], edx
mov dword [ecx + 0x34], eax
inc dword [edi + 0x28]
mov eax, dword [ebp + 8]
mov ecx, dword [edi + 0x28]
test eax, eax
je 0x1003e542
inc ecx
inc edx
mov dword [edi + 0x28], ecx
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x1003e532
mov dword [esp + 0x3c], edx
cmp dword [esp + 0x50], ebx
je 0x1003e55f
mov eax, dword [edi + 0xf0]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp]
mov dword [esp + 0x68], edi
mov dword [edi + 0xf0], eax
push edi
call fcn.100495a0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x1003ebf4
cmp byte [edi + 0x12], 0
jne 0x1003e57f
or dword [ebx + 0x98], 0x20
push dword [esp + 0x20]
push dword [esp + 0x18]
push edi
call fcn.100373e0
add esp, 0xc
cmp dword [esp + 0x50], 0
je 0x1003e5c6
push dword [esp + 0x1c]
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push ebp
push edi
call fcn.1004d330
mov eax, dword [esp + 0x34]
add esp, 0x18
mov dword [esp + 0x58], eax
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0xa0]
push dword [esp + 0xa4]
mov dword [esp + 0x80], eax
lea eax, [esp + 0x7c]
push eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x80], edi
call fcn.10054020
add esp, 8
test eax, eax
jne 0x1003ebf4
mov eax, dword [esi + 0x20]
and eax, 0x80
or eax, 0
je 0x1003e66a
cmp byte [edi + 0x12], 0
jne 0x1003e66a
cmp dword [edi + 0x78], 0
jne 0x1003e66a
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
push eax
push 0
push 0x46
push ebx
mov dword [esp + 0x58], eax
call fcn.1005c490
add esp, 0x10
cmp dword [esp + 0x30], 0
mov ecx, dword [esp + 0x14]
jne 0x1003e705
cmp dword [esp + 0xa4], 0
jne 0x1003e705
test ecx, ecx
jne 0x1003e705
cmp dword [ebp + 0x38], ecx
jne 0x1003e705
push dword [ebp]
mov esi, dword [esp + 0x24]
push 1
push dword [ebp + 0x1c]
push esi
push edi
call fcn.100595c0
add esp, 0x14
test byte [ebp + 0x24], 0x20
jne 0x1003e6cf
mov eax, dword [esp + 0x48]
test eax, eax
jne 0x1003e6b7
or eax, 0xffffffff
push 0xffffffffffffffff
push dword [ebp]
push eax
push esi
push dword [ebp + 0x1c]
push 0x89
push ebx
call fcn.1005c550
add esp, 0x1c
mov esi, dword [ebp + 8]
test esi, esi
je 0x1003eba6
mov edi, dword [esp + 0x20]
mov edi, edi
push edi
push dword [esi + 0x2c]
push 0x89
push ebx
call fcn.1005c490
mov esi, dword [esi + 0x14]
add esp, 0x10
test esi, esi
jne 0x1003e6e0
mov edi, dword [esp + 0x9c]
jmp 0x1003eba6
test byte [esp + 0x90], 0x40
je 0x1003e714
mov ecx, 1
xor eax, eax
test ecx, ecx
sete al
test byte [ebp + 0x24], 0x20
lea eax, [eax*8 + 0x414]
movzx eax, ax
mov dword [esp + 0x30], eax
jne 0x1003e759
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
push eax
push 0
push 0x49
push ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x50], 1
mov dword [esp + 0x64], eax
call fcn.1005c490
add esp, 0x10
jmp 0x1003e7a5
push ebp
call fcn.10053080
mov dword [esp + 0x18], eax
movzx ecx, word [eax + 0x32]
mov eax, dword [edi + 0x2c]
mov dword [esp + 0x44], ecx
movsx ecx, cx
push ecx
lea edx, [eax + 1]
add eax, ecx
mov dword [esp + 0x3c], edx
mov edx, dword [edi + 0x28]
push edx
mov dword [edi + 0x2c], eax
push 0x71
lea eax, [edx + 1]
mov dword [esp + 0x38], edx
push ebx
mov dword [edi + 0x28], eax
call fcn.1005c490
push dword [esp + 0x28]
mov dword [esp + 0x50], eax
push edi
call fcn.10067660
add esp, 0x1c
mov eax, dword [esp + 0x1c]
inc eax
push eax
push dword [esp + 0x34]
push 0
push 0
push dword [esp + 0xb4]
push dword [esp + 0xb4]
push edi
call fcn.10069b00
mov ecx, eax
add esp, 0x1c
mov dword [esp + 0x60], ecx
test ecx, ecx
je 0x1003ebf4
mov eax, dword [ecx + 0x18]
mov dword [esp + 0x70], eax
mov eax, dword [ecx + 0x1c]
mov dword [esp + 0x30], eax
mov al, byte [ecx + 0x31]
mov byte [esp + 0x13], al
mov byte [esp + 0x74], al
cmp al, 1
je 0x1003e7fe
push edi
call fcn.1004d630
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x1003e814
push 1
push eax
push 0x53
push ebx
call fcn.1005c490
add esp, 0x10
mov edx, dword [esp + 0x14]
test edx, edx
je 0x1003e86f
mov ecx, dword [esp + 0x40]
movsx eax, cx
mov dword [esp + 0x20], eax
xor eax, eax
cmp ax, cx
jge 0x1003e865
mov edi, dword [esp + 0x20]
xor esi, esi
mov eax, dword [esp + 0x34]
add eax, esi
push eax
mov eax, dword [edx + 4]
movsx eax, word [eax + esi*2]
push eax
push dword [esp + 0x24]
push ebp
push ebx
call fcn.100407b0
mov edx, dword [esp + 0x28]
inc esi
add esp, 0x14
cmp esi, edi
jl 0x1003e834
mov edi, dword [esp + 0x9c]
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x18], eax
jmp 0x1003e88e
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
push eax
push 0xffffffffffffffff
push dword [esp + 0x24]
mov dword [esp + 0x24], eax
push ebp
push ebx
call fcn.100407b0
mov eax, dword [esp + 0x2c]
add esp, 0x14
cmp byte [esp + 0x13], 0
je 0x1003e931
mov eax, dword [esp + 0x40]
movzx ecx, ax
mov eax, dword [esp + 0x3c]
add eax, 2
mov dword [esp + 0x20], ecx
cdq
push edx
push eax
push esi
call fcn.1003de20
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x2c], ecx
test ecx, ecx
jne 0x1003e8d2
push dword [esp + 0x60]
call fcn.1006c620
add esp, 4
jmp 0x1003ebf4
mov eax, dword [esp + 0x3c]
inc eax
push eax
push 1
push ecx
call sub.VCRUNTIME140.dll_memset
mov eax, dword [esp + 0x48]
add esp, 0xc
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
mov byte [eax + ecx + 1], 0
mov eax, dword [esp + 0x70]
test eax, eax
js 0x1003e902
sub eax, edx
mov byte [eax + ecx], 0
mov eax, dword [esp + 0x30]
test eax, eax
js 0x1003e910
sub eax, edx
mov byte [eax + ecx], 0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x1003e922
push eax
push ebx
call fcn.1005ca20
add esp, 8
dec dword [edi + 0x38]
mov eax, dword [edi + 0x38]
mov dword [esp + 0x5c], eax
jmp 0x1003e9bb
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x1003e994
inc dword [edi + 0x2c]
mov eax, dword [edi + 0x2c]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x40]
movsx esi, ax
push esi
push ecx
push dword [edi]
mov dword [esp + 0x2c], 0
call fcn.10049ce0
add esp, 8
push eax
push dword [esp + 0x20]
push esi
push dword [esp + 0x44]
push 0x5c
push ebx
call fcn.1005c550
push esi
push dword [esp + 0x54]
push dword [esp + 0x3c]
push dword [esp + 0x50]
push 0x84
push ebx
call fcn.1005c5d0
mov esi, dword [esp + 0x80]
add esp, 0x34
jmp 0x1003e9af
push eax
push dword [esp + 0x58]
mov dword [esp + 0x28], 1
push 0x94
push ebx
call fcn.1005c490
add esp, 0x10
push dword [esp + 0x60]
call fcn.1006c620
add esp, 4
cmp dword [esp + 0x50], 0
jne 0x1003ea17
cmp byte [esp + 0x13], 2
mov dword [esp + 0x38], 0
jne 0x1003e9e0
push 0x11
push ebx
call fcn.1005c3e0
add esp, 8
mov dword [esp + 0x38], eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x34]
push dword [esp + 0x28]
push 8
push 0x6d
push ebp
push edi
call fcn.1004d9a0
mov al, byte [esp + 0x33]
add esp, 0x20
cmp al, 2
jne 0x1003ea1b
push dword [esp + 0x38]
push ebx
call fcn.10064d70
add esp, 8
jmp 0x1003ea1f
mov al, byte [esp + 0x13]
test al, al
je 0x1003ea5b
cmp dword [ebp + 0x38], 0
mov ecx, dword [esp + 0x24]
jne 0x1003eac3
mov eax, dword [esp + 0x2c]
sub eax, dword [esp + 0x1c]
cmp byte [eax + ecx], 0
je 0x1003eabd
mov eax, dword [esp + 0x20]
cwde
push eax
push dword [esp + 0x1c]
push dword [esp + 0x64]
push ecx
push 0x1c
push ebx
call fcn.1005c5d0
add esp, 0x18
jmp 0x1003eab9
cmp dword [esp + 0x14], 0
je 0x1003eaa0
push dword [esp + 0x28]
push 0x24
push ebx
call fcn.1005c430
add esp, 0xc
mov dword [esp + 0x44], eax
cmp dword [ebp + 0x38], 0
push dword [esp + 0x18]
je 0x1003ea8f
push 0
push dword [esp + 0x30]
push 0x5a
push ebx
call fcn.1005c4f0
jmp 0x1003eab6
push dword [esp + 0x2c]
push 0x7f
push ebx
call fcn.1005c490
add esp, 0x10
jmp 0x1003eab9
push dword [esp + 0x18]
push 0
push dword [esp + 0x5c]
push 0x29
push ebx
call fcn.1005c4f0
mov dword [esp + 0x58], eax
add esp, 0x14
mov ecx, dword [esp + 0x24]
cmp dword [ebp + 0x38], 0
je 0x1003eb1c
push ebp
push esi
call fcn.10049340
push ebp
push edi
mov esi, eax
call fcn.10068600
push edi
call fcn.1004d470
add esp, 0x14
cmp byte [esp + 0x13], 1
jne 0x1003eafc
push dword [esp + 0x1c]
push 0x75
push ebx
call fcn.1005c430
add esp, 0xc
cmp dword [edi + 0x74], 0
jne 0x1003eafc
mov byte [edi + 0x14], 0
push 0xfffffffffffffff4
push esi
push dword [esp + 0x20]
push 1
push 0
push 0xa
push ebx
call fcn.1005c550
push 2
push ebx
call fcn.1005ca00
add esp, 0x24
jmp 0x1003eb4f
push dword [esp + 0x30]
cmp byte [edi + 0x12], 0
push dword [esp + 0x78]
sete al
push 0xb
movzx eax, al
push eax
push dword [esp + 0x30]
push dword [esp + 0x2c]
push dword [esp + 0x70]
push ecx
push dword [esp + 0x84]
push ebp
push edi
call fcn.100483b0
add esp, 0x2c
cmp byte [esp + 0x13], 0
je 0x1003eb6e
push dword [esp + 0x5c]
push ebx
call fcn.100672a0
push dword [esp + 0x68]
call fcn.1006c620
add esp, 0xc
jmp 0x1003eba6
cmp dword [esp + 0x14], 0
mov esi, dword [esp + 0x44]
je 0x1003eb95
lea eax, [esi + 1]
push eax
push dword [esp + 0x2c]
push 5
push ebx
call fcn.1005c490
push esi
push ebx
call fcn.10064d70
add esp, 0x18
jmp 0x1003eba6
push esi
push ebx
call fcn.10064950
push esi
push ebx
call fcn.10064d70
add esp, 0x10
cmp byte [edi + 0x12], 0
jne 0x1003ebc1
cmp dword [edi + 0x78], 0
jne 0x1003ebc1
cmp dword [edi + 0x70], 0
je 0x1003ebc1
push edi
call fcn.10014100
add esp, 4
mov eax, dword [esp + 0x48]
test eax, eax
je 0x1003ebf0
push 1
push eax
push 0x51
push ebx
call fcn.1005c490
push 1
push ebx
call fcn.100675f0
push 0
push str.rows_deleted
push 0
push 0
push ebx
call fcn.100675a0
add esp, 0x2c
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x68]
mov ebx, dword [esp + 0x2c]
test eax, eax
je 0x1003ec0a
mov ecx, dword [esp + 0x6c]
mov dword [eax + 0xf0], ecx
pop ebp
push dword [esp + 0x9c]
push esi
call fcn.10058510
mov eax, dword [esp + 0xa8]
add esp, 8
test eax, eax
je 0x1003ec30
push eax
push esi
call fcn.10042b80
add esp, 8
test ebx, ebx
je 0x1003ec86
test esi, esi
je 0x1003ec7d
cmp dword [esi + 0x1e8], 0
je 0x1003ec55
push ebx
push esi
call fcn.100281e0
add esp, 8
pop edi
pop esi
pop ebx
add esp, 0x88
ret
cmp ebx, dword [esi + 0x138]
jb 0x1003ec7d
cmp ebx, dword [esi + 0x13c]
jae 0x1003ec7d
mov eax, dword [esi + 0x134]
mov dword [ebx], eax
pop edi
mov dword [esi + 0x134], ebx
pop esi
pop ebx
add esp, 0x88
ret
push ebx
call sym.sqlite3.dll_sqlite3_free
add esp, 4
pop edi
pop esi
pop ebx
add esp, 0x88
ret