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

Disassembly:
sub esp, 0x58
push ebx
push ebp
push edi
mov edi, dword [esp + 0x68]
push edi
mov eax, dword [edi]
mov dword [esp + 0x18], eax
xor eax, eax
inc eax
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x28], eax
inc eax
mov dword [esp + 0x40], eax
inc eax
mov ebp, eax
mov dword [esp + 0x4c], eax
mov eax, dword [edi + 0x2c]
mov dword [esp + 0x30], ebp
inc ebp
mov dword [esp + 0x58], ebp
inc ebp
mov dword [esp + 0x14], ebp
inc ebp
mov dword [esp + 0x5c], ebp
inc ebp
mov dword [esp + 0x48], ebp
inc ebp
mov dword [esp + 0x54], ebp
inc ebp
mov dword [esp + 0x50], ebp
inc ebp
cmp eax, ebp
cmovle eax, ebp
mov dword [edi + 0x2c], eax
call fcn.1014a41d
mov ebx, eax
mov dword [esp + 0x3c], ebx
pop ecx
test ebx, ebx
je 0x10120599
push esi
mov esi, dword [esp + 0x70]
test esi, esi
je 0x10120598
cmp dword [esi + 0x1c], 0
je 0x10120598
push 0x5c
push dword [esi]
push str.sqlite__
call fcn.1011e070
add esp, 0xc
test eax, eax
je 0x10120598
push dword [esi + 0x48]
push dword [esp + 0x1c]
call fcn.10153cd9
mov edx, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x20]
add edx, edx
mov ecx, dword [eax + 0x10]
push dword [ecx + edx*8]
push 0
push dword [esi]
push 0x1c
push edi
call fcn.1014ecdb
add esp, 0x1c
test eax, eax
jne 0x10120598
push dword [esi]
push eax
push dword [esi + 0x1c]
push dword [esp + 0x38]
push edi
call fcn.10156889
mov eax, dword [esp + 0x94]
mov edx, eax
inc eax
mov dword [esp + 0x78], edx
push 0x60
push esi
push dword [esp + 0x48]
lea ecx, [eax + 1]
mov dword [esp + 0x9c], eax
mov eax, dword [edi + 0x28]
cmp eax, ecx
push edx
cmovle eax, ecx
push edi
mov dword [edi + 0x28], eax
call fcn.1014ecdb
push dword [esi]
push dword [esp + 0x74]
push ebx
call fcn.101603ef
mov esi, dword [esi + 8]
add esp, 0x34
mov eax, dword [esp + 0x74]
jmp 0x101204f6
test eax, eax
je 0x10120114
cmp eax, esi
jne 0x101204f3
movzx eax, byte [esp + 0x13]
xor ecx, ecx
cmp dword [esi + 0x24], ecx
cmovne ecx, eax
mov byte [esp + 0x13], cl
mov ecx, dword [esp + 0x70]
test byte [ecx + 0x24], 0x80
je 0x10120142
mov eax, dword [esi + 0x38]
and al, 3
cmp al, 2
jne 0x10120142
movzx eax, word [esi + 0x32]
mov dword [esp + 0x38], eax
jmp 0x10120156
test byte [esi + 0x38], 8
mov ecx, esi
movzx eax, word [esi + 0x34]
mov dword [esp + 0x38], eax
je 0x10120156
movzx eax, word [esi + 0x32]
push dword [ecx]
dec eax
push dword [esp + 0x58]
mov dword [esp + 0x28], eax
push ebx
call fcn.101603ef
mov ecx, dword [esp + 0x2c]
mov eax, dword [edi + 0x2c]
add ecx, ebp
push dword [esp + 0x38]
cmp eax, ecx
cmovle eax, ecx
mov dword [edi + 0x2c], eax
push dword [esi + 0x2c]
push dword [esp + 0x90]
push 0x60
push ebx
call fcn.1014ecdb
push esi
push edi
call fcn.1016209c
push dword [esp + 0x74]
push dword [esp + 0x64]
push 0x45
push ebx
call fcn.101596d3
push dword [esp + 0x90]
movzx eax, word [esi + 0x32]
push eax
push 0x45
push ebx
call fcn.101596d3
add esp, 0x48
push dword [esp + 0x7c]
push 0x25
push ebx
call fcn.101596ba
mov dword [esp + 0x6c], eax
xor eax, eax
inc eax
push eax
push dword [esp + 0x24]
push dword [esp + 0x90]
push 0x5c
push ebx
call fcn.1014ecdb
mov eax, dword [esp + 0x38]
push dword [esp + 0x7c]
push dword [eax + 0x1d4]
push 0x45
push ebx
call fcn.101596d3
push 0
push 0x10280f38
push 4
push dword [esp + 0x7c]
push dword [esp + 0x8c]
push 0
push edi
call fcn.1014ecdb
add esp, 0x4c
push dword [esp + 0x30]
push 0
push 0x45
push ebx
call fcn.101596d3
mov eax, dword [ebx + 0x6c]
add esp, 0x10
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x20]
test eax, eax
jle 0x101203a6
shl eax, 2
push 0
lfence
dec dword [edi + 0x38]
mov ecx, dword [edi + 0x38]
push eax
push dword [esp + 0x20]
mov dword [esp + 0x40], ecx
call fcn.10141b1e
add esp, 0xc
mov dword [esp + 0x38], eax
test eax, eax
je 0x101204ef
push 0xb
push ebx
lfence
call fcn.101596a4
mov eax, dword [ebx + 0x6c]
pop ecx
pop ecx
xor ecx, ecx
mov dword [esp + 0x24], eax
inc ecx
cmp dword [esp + 0x20], ecx
jne 0x101202a0
cmp word [esi + 0x32], cx
jne 0x101202a0
cmp byte [esi + 0x36], 0
je 0x101202a0
push dword [esp + 0x34]
push ebp
push 0x33
push ebx
call fcn.101596d3
add esp, 0x10
xor ecx, ecx
mov dword [esp + 0x1c], ecx
mov eax, dword [esi + 0x20]
push dword [eax + ecx*4]
push edi
call fcn.1014ecdb
push dword [esp + 0x38]
mov esi, eax
push dword [esp + 0x28]
push 0x45
push ebx
call fcn.101596d3
push dword [esp + 0x2c]
push dword [esp + 0x38]
push dword [esp + 0x9c]
push 0x59
push ebx
call fcn.1014ecdb
push 0xfffffffffffffffe
push esi
mov esi, dword [esp + 0x50]
lea eax, [esi + ebp]
push eax
push 0
push dword [esp + 0x50]
push 0x34
push ebx
call fcn.1014ecdb
mov ecx, dword [esp + 0x80]
add esp, 0x48
push 0x80
push ebx
mov dword [ecx + esi*4], eax
call fcn.10159a50
mov eax, dword [esp + 0x28]
pop ecx
pop ecx
mov ecx, esi
mov esi, dword [esp + 0x44]
inc ecx
mov dword [esp + 0x1c], ecx
cmp ecx, eax
jl 0x101202a6
push dword [esp + 0x30]
push eax
push 0x45
push ebx
call fcn.101596d3
push dword [esp + 0x44]
push ebx
call fcn.1015fce3
mov eax, dword [esp + 0x3c]
dec eax
push eax
push ebx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
add esp, 0x20
mov edi, dword [esp + 0x20]
xor esi, esi
mov dword [eax + 8], ecx
lfence
mov eax, dword [esp + 0x38]
push dword [eax + esi*4]
push ebx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
mov dword [eax + 8], ecx
lea eax, [esi + ebp]
push eax
push esi
push dword [esp + 0x8c]
push 0x59
push ebx
call fcn.1014ecdb
add esp, 0x1c
inc esi
cmp esi, edi
jl 0x10120356
push dword [esp + 0x34]
push ebx
call fcn.10161d60
push dword [esp + 0x40]
lfence
push dword [esp + 0x24]
call fcn.10141a5b
mov edi, dword [esp + 0x7c]
add esp, 0x10
mov esi, dword [esp + 0x14]
xor eax, eax
push 0
push 0x10280f68
push 2
push esi
push dword [esp + 0x50]
inc eax
push eax
push edi
call fcn.1014ecdb
mov eax, dword [esp + 0x34]
add esp, 0x1c
cmp dword [eax + 0x1d4], 0
je 0x10120457
push esi
push 0x32
push ebx
call fcn.101596ba
push dword [esp + 0x20]
mov esi, eax
push 0x12
push ebx
call fcn.101596ba
mov ebx, eax
xor eax, eax
inc eax
push eax
push ebp
push 0
push dword [esp + 0xa0]
push 0x19
push dword [esp + 0x68]
call fcn.1014ecdb
push esi
mov esi, dword [esp + 0x70]
mov edi, eax
push esi
call fcn.1015fcbe
push dword [esp + 0x5c]
mov ecx, dword [esi + 0x6c]
push dword [esp + 0xb8]
mov dword [eax + 8], ecx
push 5
push esi
call fcn.101596d3
add esp, 0x48
push ebx
mov ebx, esi
push ebx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
push edi
push ebx
mov dword [eax + 8], ecx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
mov edi, dword [esp + 0x7c]
mov esi, dword [esp + 0x24]
mov dword [eax + 8], ecx
jmp 0x1012046a
push dword [esp + 0x24]
push dword [esp + 0x80]
push 5
push ebx
call fcn.101596d3
add esp, 0x10
xor eax, eax
inc eax
push 0
push 0x10280fb0
push eax
push dword [esp + 0x5c]
push dword [esp + 0x50]
push 0
push edi
call fcn.1014ecdb
push 0
push 0x10284b40
push esi
push 3
push dword [esp + 0x74]
push 0x5b
push ebx
call fcn.1014ecdb
push dword [esp + 0x60]
push dword [esp + 0xb4]
push 0x79
push ebx
call fcn.101596d3
add esp, 0x48
push dword [esp + 0x28]
push esi
push dword [esp + 0x80]
push 0x7a
push ebx
call fcn.1014ecdb
push 8
push ebx
call fcn.10159a50
push dword [esp + 0x7c]
push ebx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
add esp, 0x24
mov esi, dword [esp + 0x44]
mov dword [eax + 8], ecx
mov al, byte [esp + 0x13]
mov byte [esp + 0x13], al
mov eax, dword [esp + 0x74]
mov esi, dword [esi + 0x14]
mov dword [esp + 0x44], esi
test esi, esi
jne 0x10120108
test eax, eax
jne 0x10120598
cmp byte [esp + 0x13], al
je 0x10120598
mov ebp, dword [esp + 0x50]
push ebp
push dword [esp + 0x68]
push 0x5c
push ebx
call fcn.101596d3
push ebp
push 0x14
push ebx
call fcn.101596ba
push dword [esp + 0x70]
mov esi, eax
push 0
push 0x48
push ebx
call fcn.101596d3
mov ebp, dword [esp + 0x40]
push 0
push 0x10284b40
push ebp
push 3
push dword [esp + 0x84]
push 0x5b
push ebx
call fcn.1014ecdb
mov edi, dword [esp + 0xc0]
add esp, 0x48
push dword [esp + 0x28]
push edi
push 0x79
push ebx
call fcn.101596d3
push dword [esp + 0x38]
push ebp
push edi
push 0x7a
push ebx
call fcn.1014ecdb
push 8
push ebx
call fcn.10159a50
push esi
push ebx
call fcn.1015fcbe
mov ecx, dword [ebx + 0x6c]
add esp, 0x34
mov dword [eax + 8], ecx
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x58
ret