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

Disassembly:
sub esp, 0x40
push ebx
push ebp
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x20], ebp
inc ebp
mov dword [esp + 0x30], ebp
inc ebp
mov dword [esp + 0x10], ebp
inc ebp
mov ecx, dword [eax]
mov dword [esp + 0x28], ebp
inc ebp
push esi
mov dword [esp + 0x38], ebp
inc ebp
mov dword [esp + 0x44], ebp
inc ebp
push edi
mov dword [esp + 0x40], ebp
push eax
mov dword [esp + 0x24], ecx
mov dword [esp + 0x14], 0xffffffff
inc ebp
call fcn.0047caf0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ce6e
mov eax, dword [esp + 0x58]
test eax, eax
je 0x46ce6e
mov ecx, dword [eax + 0x20]
test ecx, ecx
je 0x46ce6e
mov esi, dword [eax]
mov ecx, 7
mov edi, str.sqlite_
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x46ce6e
mov eax, dword [eax + 0x40]
mov esi, dword [esp + 0x20]
push eax
push esi
call fcn.00465f50
mov ecx, dword [esi + 0x10]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x2c], eax
mov esi, dword [esp + 0x5c]
shl eax, 4
mov edx, dword [eax + ecx]
mov eax, dword [edi]
push edx
push 0
push eax
push 0x1c
push esi
call fcn.00471db0
add esp, 0x1c
test eax, eax
jne 0x46ce6e
mov ecx, dword [edi]
mov edx, dword [edi + 0x20]
push ecx
push eax
mov eax, dword [esp + 0x2c]
push edx
push eax
push esi
call fcn.00471e60
mov eax, dword [esi + 0x48]
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x78], eax
inc eax
mov dword [esi + 0x48], eax
mov ecx, dword [edi]
push 0
push ecx
push 0
push edx
push 0
push 0x5e
push ebx
call fcn.0046ba30
mov esi, dword [edi + 8]
add esp, 0x30
test esi, esi
mov dword [esp + 0x14], esi
je 0x46cda0
jmp 0x46ca68
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x34], 0
test eax, eax
je 0x46ca80
cmp eax, esi
jne 0x46cd91
mov edi, dword [esi + 0x24]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x4c], edi
lea eax, [edi*4]
push eax
push ecx
call fcn.0043fa70
add esp, 8
mov dword [esp + 0x1c], eax
test eax, eax
je 0x46cd8d
mov edx, dword [esp + 0x54]
push esi
push edx
call fcn.004758f0
mov edx, dword [esp + 0x5c]
lea ecx, [ebp + edi*2 + 1]
add esp, 8
cmp ecx, dword [edx + 0x4c]
jle 0x46cac6
mov dword [edx + 0x4c], ecx
mov ecx, dword [esi + 0x28]
mov edx, dword [esp + 0x64]
push 0xfffffffffffffff0
push eax
mov eax, dword [esp + 0x2c]
push eax
push ecx
push edx
push 0x27
push ebx
call fcn.0046ba30
mov eax, dword [esi]
mov ecx, dword [esp + 0x54]
push 0
push eax
push 0
push ecx
push 0
push 0x5e
push ebx
call fcn.0046ba30
add esp, 0x38
xor esi, esi
test edi, edi
jl 0x46cb3a
lea edx, [esi + ebp]
push edx
push 0
push 7
push ebx
call fcn.0046c410
add esp, 0x10
inc esi
cmp esi, edi
jle 0x46cafe
test edi, edi
jle 0x46cb3a
lea esi, [edi + ebp + 1]
mov dword [esp + 0x2c], edi
push esi
push 0
push 0xa
push ebx
call fcn.0046c410
mov eax, dword [esp + 0x3c]
add esp, 0x10
inc esi
dec eax
mov dword [esp + 0x2c], eax
jne 0x46cb20
push ebx
call fcn.0046cec0
mov dword [esp + 0x30], eax
push eax
mov eax, dword [esp + 0x6c]
push eax
push 0x48
push ebx
call fcn.0046c410
push ebx
call fcn.0046cf30
push 1
push ebp
push 0x14
push ebx
mov dword [esp + 0x6c], eax
call fcn.0046c410
add esp, 0x28
xor esi, esi
test edi, edi
jle 0x46cbe5
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x64]
push ecx
push esi
push edx
push 0x1d
push ebx
call fcn.0046ba70
add esp, 0x14
test esi, esi
jne 0x46cb9d
lea eax, [ebp + 1]
push eax
push 0x1c
push ebx
call fcn.0046cea0
add esp, 0xc
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x20]
mov ecx, dword [esp + 0x54]
mov eax, dword [edx + esi*4]
push eax
push ecx
call fcn.00472e10
mov edx, dword [esp + 0x38]
push 0xfffffffffffffffc
push eax
lea eax, [edi + ebp + 1]
add eax, esi
push eax
push 0
push edx
push 0x4b
push ebx
call fcn.0046ba30
mov ecx, dword [esp + 0x40]
push 0x80
push ebx
mov dword [ecx + esi*4], eax
call fcn.0046c940
add esp, 0x2c
inc esi
cmp esi, edi
jl 0x46cb70
mov edx, dword [esp + 0x2c]
push edx
push 0
push 1
push ebx
call fcn.0046c410
add esp, 0x10
xor esi, esi
test edi, edi
jle 0x46cc4c
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + esi*4]
push ecx
push ebx
call fcn.0046c430
add esp, 8
test esi, esi
jne 0x46cc20
mov edx, dword [esp + 0x34]
push edx
push ebx
call fcn.0046c430
add esp, 8
lea eax, [esi + ebp + 1]
push 1
push eax
push 0x14
push ebx
call fcn.0046c410
mov ecx, dword [esp + 0x74]
lea eax, [edi + ebp + 1]
add eax, esi
push eax
push esi
push ecx
push 0x1d
push ebx
call fcn.0046ba70
add esp, 0x24
inc esi
cmp esi, edi
jl 0x46cbfd
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x20]
push edx
push eax
call fcn.0043f7f0
mov ecx, dword [esp + 0x34]
push ecx
push ebx
call fcn.0046cf10
mov edx, dword [esp + 0x54]
mov esi, dword [esp + 0x74]
push edx
push esi
push 0x5f
push ebx
call fcn.0046c410
push esi
push 0x2d
push ebx
call fcn.0046cea0
mov eax, dword [esp + 0x44]
push eax
push ebp
push 0xf
push ebx
call fcn.0046c410
mov eax, dword [esp + 0x4c]
add esp, 0x3c
test eax, eax
jge 0x46ccaa
push ebp
push 0x1c
push ebx
call fcn.0046cea0
add esp, 0xc
mov dword [esp + 0x10], eax
test edi, edi
jle 0x46cd3c
or eax, 0xffffffff
lea edi, [ebp + 1]
sub eax, ebp
mov dword [esp + 0x44], eax
mov esi, dword [esp + 0x48]
push 0
push 0x509164
push 0
push esi
push 0
push 0x5e
push ebx
call fcn.0046ba30
mov eax, dword [esp + 0x34]
push eax
push eax
push esi
push 0x5b
push ebx
call fcn.0046ba70
push esi
push edi
push ebp
push 0x56
push ebx
call fcn.0046ba70
add esp, 0x44
push 0xffffffffffffffff
push esi
push 0x14
push ebx
call fcn.0046c410
push esi
push esi
push edi
push 0x59
push ebx
call fcn.0046ba70
push esi
push 0x90
push ebx
call fcn.0046cea0
mov eax, dword [esp + 0x48]
push eax
push eax
push esi
push 0x5b
push ebx
call fcn.0046ba70
mov ecx, dword [esp + 0x88]
mov eax, dword [esp + 0x90]
add esp, 0x44
inc edi
add ecx, edi
cmp ecx, eax
jl 0x46ccbe
mov esi, dword [esp + 0x3c]
mov edx, dword [esp + 0x28]
push 0
push 0x50e7bc
push esi
push 3
push edx
push 0x1f
push ebx
call fcn.0046ba30
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0x7c]
push edi
push eax
push 0x38
push ebx
call fcn.0046c410
mov ecx, dword [esp + 0x8c]
push edi
push esi
push ecx
push 0x39
push ebx
call fcn.0046ba70
add esp, 0x40
push 8
push ebx
call fcn.0046c940
mov esi, dword [esp + 0x1c]
add esp, 8
mov edi, dword [esp + 0x58]
mov esi, dword [esi + 0x14]
test esi, esi
mov dword [esp + 0x14], esi
jne 0x46ca64
mov eax, dword [edi + 8]
test eax, eax
jne 0x46cde2
mov edx, dword [esp + 0x24]
mov eax, dword [edi + 0x20]
mov edi, dword [esp + 0x64]
push edx
push eax
push edi
push 0x27
push ebx
call fcn.0046ba70
mov esi, dword [esp + 0x2c]
push esi
push edi
push 0x20
push ebx
call fcn.0046c410
push edi
push 0x2d
push ebx
call fcn.0046cea0
push esi
push 0x1c
push ebx
call fcn.0046cea0
add esp, 0x3c
jmp 0x46cdf8
mov ecx, dword [esp + 0x10]
push ecx
push ebx
call fcn.0046c430
push 1
push ebx
call fcn.0046ce80
add esp, 0x10
mov edx, dword [esp + 0x38]
mov dword [esp + 0x10], eax
push edx
push 0
push 0xa
push ebx
call fcn.0046c410
mov esi, dword [esp + 0x4c]
mov eax, dword [esp + 0x38]
push 0
push 0x50e7bc
push esi
push 3
push eax
push 0x1f
push ebx
call fcn.0046ba30
mov edi, dword [esp + 0x6c]
mov ebp, dword [esp + 0x8c]
push edi
push ebp
push 0x38
push ebx
call fcn.0046c410
push edi
push esi
push ebp
push 0x39
push ebx
call fcn.0046ba70
add esp, 0x50
push 8
push ebx
call fcn.0046c940
mov eax, dword [esp + 0x5c]
add esp, 8
cmp dword [eax + 0x4c], esi
jge 0x46ce60
mov dword [eax + 0x4c], esi
mov ecx, dword [esp + 0x10]
push ecx
push ebx
call fcn.0046c430
add esp, 8
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x40
ret