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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x48
push ebx
push esi
push edi
mov edi, ecx
mov ebx, edx
mov edx, 0xc0
mov dword [ebp - 0xc], edi
mov eax, dword [edi]
mov ecx, eax
mov dword [ebp - 4], eax
call fcn.0040a250
mov esi, eax
mov dword [ebp - 0x28], eax
test esi, esi
je 0x44b40b
push 0xc0
push 0
push esi
call fcn.004760a0
mov ecx, dword [ebp - 4]
add esp, 0xc
mov dword [esi], ecx
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x44b3ec
mov dword [eax + 0x3c], esi
mov eax, dword [ecx + 0x88]
mov dword [esi + 0x40], eax
mov dword [esi + 0x3c], 0
mov dword [ecx + 0x88], esi
mov dword [esi + 0x34], 0x26bceaa5
jmp 0x44b410
xor esi, esi
mov dword [ebp - 0x28], esi
mov dword [edi + 0xc], esi
test esi, esi
je 0x44c864
mov ecx, dword [ebp - 0xc]
lea eax, [ebp - 0x38]
mov byte [esi + 0x64], 1
mov edx, ebx
mov dword [edi + 0x48], 2
mov edi, dword [ebp + 8]
push eax
push edi
call fcn.0043cd20
mov ebx, eax
add esp, 8
test ebx, ebx
js 0x44c864
mov eax, dword [ebp - 4]
mov ecx, ebx
shl ecx, 4
add ecx, dword [eax + 8]
mov dword [ebp - 8], ecx
cmp ebx, 1
jne 0x44b46b
mov ecx, dword [ebp - 0xc]
call fcn.00440490
test eax, eax
jne 0x44c864
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x38]
mov ecx, eax
call fcn.0043cae0
mov dword [ebp - 0x10], eax
test eax, eax
je 0x44c864
cmp dword [ebp + 0x10], 0
je 0x44b4a0
push dword [ebp + 0xc]
push 0x4a7f24
push dword [ebp - 4]
call fcn.0040b6b0
mov ecx, eax
add esp, 0xc
mov dword [ebp - 0x14], ecx
jmp 0x44b4b0
mov edx, dword [ebp + 0xc]
mov ecx, dword [ebp - 4]
call fcn.0043cae0
mov ecx, eax
mov dword [ebp - 0x14], eax
cmp dword [edi + 4], 0
jbe 0x44b4bd
mov eax, dword [ebp - 8]
mov eax, dword [eax]
jmp 0x44b4bf
xor eax, eax
push eax
push ecx
push dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov edx, 0x13
mov dword [ebp - 0x18], eax
call fcn.0043bd40
add esp, 0xc
test eax, eax
jne 0x44c84a
mov ecx, dword [ebp - 0x10]
mov edx, str.default_cache_size
call fcn.0040c4b0
test eax, eax
jne 0x44b5e4
mov edi, dword [ebp - 0xc]
mov ecx, edi
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov edx, ebx
mov ecx, esi
call fcn.00424730
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x44b595
lea edx, [eax + 1]
mov ecx, esi
call fcn.00425320
push 0
push str.cache_size
push 0
xor edx, edx
mov ecx, esi
call fcn.004253b0
add dword [edi + 0x48], 2
add esp, 0xc
mov edx, 8
mov ecx, esi
push 0x49f75c
call fcn.004240d0
mov edi, eax
add esp, 4
cmp dword [esi + 0x1c], edi
jbe 0x44b55e
mov ecx, dword [esi + 4]
lea edx, [edi + edi*4]
mov dword [ecx + edx*4 + 4], ebx
lea eax, [edi + 1]
cmp dword [esi + 0x1c], eax
jbe 0x44b570
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 4], ebx
mov ebx, dword [ebp - 8]
add edi, 6
cmp dword [esi + 0x1c], edi
jbe 0x44bd91
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 4], 0x7d0
mov eax, dword [ebp - 4]
jmp 0x44c822
mov ecx, eax
call fcn.0040cd90
mov ecx, eax
call fcn.0040d380
mov ecx, dword [ebp - 0xc]
xor edx, edx
push ebx
mov edi, eax
call fcn.00440670
add esp, 4
mov edx, 7
mov ecx, esi
push 1
push edi
call fcn.00423c90
push 1
push 3
push ebx
mov edx, 0x25
mov ecx, esi
call fcn.00423b70
mov ebx, dword [ebp - 8]
add esp, 0x14
mov eax, dword [ebx + 0xc]
mov dword [eax + 0x50], edi
jmp 0x44bbe2
mov ecx, dword [ebp - 0x10]
mov edx, str.page_size
call fcn.0040c4b0
test eax, eax
jne 0x44b65d
mov ebx, dword [ebp - 8]
mov edi, dword [ebp - 0x14]
mov esi, dword [ebx + 4]
test edi, edi
jne 0x44b62b
test esi, esi
je 0x44b60e
mov eax, dword [esi + 4]
mov eax, dword [eax + 0x24]
jmp 0x44b610
xor eax, eax
mov ecx, dword [ebp - 0xc]
cdq
push edx
push eax
mov edx, str.page_size
call fcn.0044b120
mov eax, dword [ebp - 4]
add esp, 8
jmp 0x44c822
mov ecx, edi
call fcn.0040cd90
mov ecx, dword [ebp - 4]
mov edx, eax
push 0
push 0xffffffffffffffff
mov dword [ecx + 0x24], eax
mov ecx, esi
call fcn.0041aa50
add esp, 8
cmp eax, 7
mov eax, dword [ebp - 4]
jne 0x44c822
mov byte [eax + 0x1e], 1
jmp 0x44c822
mov ecx, dword [ebp - 0x10]
mov edx, str.secure_delete
call fcn.0040c4b0
test eax, eax
jne 0x44b6df
mov eax, dword [ebp - 8]
or ebx, 0xffffffff
mov eax, dword [eax + 4]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x44b68d
mov ecx, eax
call fcn.0044ae40
mov bl, al
and ebx, 1
cmp dword [edi + 4], 0
jne 0x44b6bd
test ebx, ebx
js 0x44b6bd
mov eax, dword [ebp - 4]
xor edi, edi
cmp dword [eax + 4], edi
jle 0x44b6bd
xor esi, esi
mov ecx, dword [eax + 8]
mov edx, ebx
mov ecx, dword [ecx + esi + 4]
call fcn.0041ab70
mov eax, dword [ebp - 4]
lea esi, [esi + 0x10]
inc edi
cmp edi, dword [eax + 4]
jl 0x44b6a3
mov ecx, dword [ebp - 0x38]
mov edx, ebx
call fcn.0041ab70
mov ecx, dword [ebp - 0xc]
cdq
push edx
mov edx, str.secure_delete
push eax
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.page_count
call fcn.0040c4b0
test eax, eax
je 0x44d296
mov ecx, dword [ebp - 0x10]
mov edx, str.max_page_count
call fcn.0040c4b0
test eax, eax
je 0x44d296
mov ecx, dword [ebp - 0x10]
mov edx, str.locking_mode
call fcn.0040c4b0
test eax, eax
jne 0x44b7f7
mov ecx, dword [ebp - 0x14]
call fcn.0044aee0
mov edx, eax
mov eax, dword [edi + 4]
test eax, eax
jne 0x44b783
cmp edx, 0xffffffff
jne 0x44b740
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 8]
movzx eax, byte [eax + 0x1f]
jmp 0x44b793
test eax, eax
jne 0x44b783
mov eax, dword [ebp - 4]
mov ebx, 2
cmp dword [eax + 4], ebx
jle 0x44b780
mov edi, 0x20
mov esi, eax
nop dword [eax + eax]
mov eax, dword [esi + 8]
mov eax, dword [eax + edi + 4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx]
call fcn.00416470
inc ebx
lea edi, [edi + 0x10]
cmp ebx, dword [esi + 4]
jl 0x44b760
mov esi, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
mov byte [eax + 0x1f], dl
mov ebx, dword [ebp - 8]
mov eax, dword [ebx + 4]
mov eax, dword [eax + 4]
mov ecx, dword [eax]
call fcn.00416470
cmp eax, 1
mov edi, str.exclusive
mov eax, str.normal
mov edx, 1
mov ecx, esi
cmovne edi, eax
call fcn.00425320
push 0
push str.locking_mode
push 0
xor edx, edx
mov ecx, esi
call fcn.004253b0
add esp, 0xc
mov edx, 0x5e
mov ecx, esi
push 0
push edi
push 0
push 1
push 0
call fcn.00423cf0
add esp, 0x14
mov edx, 0x10
mov ecx, esi
push 1
push 1
call fcn.00423c90
mov eax, dword [ebp - 4]
add esp, 8
jmp 0x44c822
mov ecx, dword [ebp - 0x10]
mov edx, str.journal_mode
call fcn.0040c4b0
test eax, eax
jne 0x44b920
mov ecx, dword [ebp - 0xc]
call fcn.0044dac0
test eax, eax
jne 0x44c84a
lea edx, [eax + 1]
mov ecx, esi
call fcn.00425320
push 0
push str.journal_mode
push 0
xor edx, edx
mov ecx, esi
call fcn.004253b0
mov edx, dword [ebp - 0x14]
add esp, 0xc
test edx, edx
je 0x44b8fe
mov ecx, edx
call fcn.0040c250
mov dword [ebp - 0x38], eax
xor edi, edi
mov dword [ebp - 0x18], edi
cmp edi, 6
je 0x44b8fe
mov ecx, dword [edi*4 + 0x49f1ec]
test ecx, ecx
je 0x44b8fe
push eax
push ecx
push edx
call fcn.0040c500
add esp, 0xc
test eax, eax
je 0x44b885
mov eax, dword [ebp - 0x38]
inc edi
mov edx, dword [ebp - 0x14]
jmp 0x44b852
cmp edi, 0xffffffff
je 0x44b905
mov edx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov edi, dword [eax + 4]
sub edi, 1
js 0x44b8e6
mov ecx, edi
shl ecx, 4
mov dword [ebp - 0x28], ecx
mov eax, dword [eax + 8]
cmp dword [eax + ecx + 4], 0
je 0x44b8d5
cmp edi, ebx
je 0x44b8b4
cmp dword [edx + 4], 0
jne 0x44b8d5
mov edx, edi
mov ecx, esi
call fcn.00424730
push dword [ebp - 0x18]
mov edx, 0x7e
mov ecx, esi
push 1
push edi
call fcn.00423b70
mov ecx, dword [ebp - 0x28]
add esp, 0xc
mov edx, dword [ebp + 8]
sub ecx, 0x10
sub edi, 1
mov eax, dword [ebp - 4]
mov dword [ebp - 0x28], ecx
jns 0x44b8a0
push 1
push 1
mov edx, 0x10
mov ecx, esi
call fcn.00423c90
add esp, 8
jmp 0x44c81c
mov dword [ebp - 0x18], 0xffffffff
mov edx, dword [ebp + 8]
cmp dword [edx + 4], 0
jne 0x44b88d
xor ebx, ebx
mov dword [edx + 4], 1
jmp 0x44b88d
mov ecx, dword [ebp - 0x10]
mov edx, str.journal_size_limit
call fcn.0040c4b0
test eax, eax
jne 0x44b9a4
mov ebx, dword [ebp - 8]
or ecx, 0xffffffff
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebx + 4]
mov eax, dword [eax + 4]
mov esi, dword [eax]
mov eax, 0xfffffffe
mov dword [ebp - 0x48], eax
test edi, edi
je 0x44b981
push 1
push 0xf4240
lea edx, [ebp - 0x48]
mov ecx, edi
call fcn.0040caf0
mov ecx, dword [ebp - 0x44]
add esp, 8
cmp ecx, 0xffffffff
jg 0x44b97e
jl 0x44b977
mov eax, dword [ebp - 0x48]
cmp eax, 0xffffffff
jae 0x44b981
or eax, 0xffffffff
or ecx, eax
jmp 0x44b981
mov eax, dword [ebp - 0x48]
push ecx
push eax
mov ecx, esi
call fcn.00416590
mov ecx, dword [ebp - 0xc]
push edx
push eax
mov edx, str.journal_size_limit
call fcn.0044b120
mov eax, dword [ebp - 4]
add esp, 0x10
jmp 0x44c822
mov ecx, dword [ebp - 0x10]
mov edx, str.auto_vacuum
call fcn.0040c4b0
test eax, eax
jne 0x44bab9
mov eax, dword [ebp - 8]
mov ecx, dword [ebp - 0xc]
mov edi, dword [eax + 4]
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x44b9fd
test edi, edi
je 0x44b9e3
mov ecx, edi
call fcn.0041ac40
jmp 0x44b9e5
xor eax, eax
mov ecx, dword [ebp - 0xc]
cdq
push edx
push eax
mov edx, str.auto_vacuum
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov ecx, eax
call fcn.0044af20
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x28], eax
mov byte [ecx + 0x20], al
test eax, eax
js 0x44d31f
mov edx, eax
mov ecx, edi
call fcn.0041abc0
test eax, eax
jne 0x44c81c
mov eax, dword [ebp - 0x28]
cmp eax, 1
je 0x44ba37
cmp eax, 2
jne 0x44c81c
push 0x4a1660
mov edx, 6
mov ecx, esi
call fcn.004240d0
mov edi, eax
add esp, 4
cmp dword [esi + 0x1c], edi
jbe 0x44ba5c
mov ecx, dword [esi + 4]
lea edx, [edi + edi*4]
mov dword [ecx + edx*4 + 4], ebx
lea eax, [edi + 1]
cmp dword [esi + 0x1c], eax
jbe 0x44ba6e
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 4], ebx
lea eax, [edi + 2]
cmp dword [esi + 0x1c], eax
jbe 0x44ba83
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
lea edx, [edi + 4]
mov dword [eax + ecx*4 + 8], edx
lea eax, [edi + 4]
cmp dword [esi + 0x1c], eax
jbe 0x44ba99
mov edx, dword [ebp - 0x28]
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
dec edx
mov dword [eax + ecx*4 + 4], edx
add edi, 5
cmp dword [esi + 0x1c], edi
jbe 0x44baab
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 4], ebx
mov edx, ebx
mov ecx, esi
call fcn.00424730
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.incremental_vacuum
call fcn.0040c4b0
test eax, eax
jne 0x44bb81
mov ecx, dword [ebp - 0xc]
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x44bafa
lea edx, [ebp - 0x38]
mov ecx, eax
call fcn.0040ccc0
test eax, eax
je 0x44bafa
mov edi, dword [ebp - 0x38]
test edi, edi
jg 0x44baff
mov edi, SysReAllocString
mov ecx, dword [ebp - 0xc]
xor edx, edx
push ebx
call fcn.00440670
add esp, 4
mov edx, 7
mov ecx, esi
push 1
push edi
call fcn.00423c90
push ebx
mov edx, 0x80
mov ecx, esi
call fcn.00423c30
add esp, 0xc
mov edx, 0x10
mov ecx, esi
mov edi, eax
push 1
call fcn.00423c30
add esp, 4
mov edx, 0x14
mov ecx, esi
push 0xffffffffffffffff
push 1
call fcn.00423c90
push edi
push 1
mov edx, 0x78
mov ecx, esi
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 0x10
mov ebx, dword [ebp - 8]
cmp edx, edi
jbe 0x44bd91
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
mov eax, dword [ebp - 4]
jmp 0x44c822
mov ecx, dword [ebp - 0x10]
mov edx, str.cache_size
call fcn.0040c4b0
test eax, eax
jne 0x44bbf8
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov edi, dword [ebp - 0x14]
test edi, edi
jne 0x44bbcb
mov eax, dword [ebp - 8]
mov ecx, ebx
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
mov edx, str.cache_size
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov ecx, edi
call fcn.0040cd90
mov ecx, eax
call fcn.0040d380
mov ebx, dword [ebp - 8]
mov ecx, dword [ebx + 0xc]
mov dword [ecx + 0x50], eax
mov edx, dword [ebx + 0xc]
mov ecx, dword [ebx + 4]
mov edx, dword [edx + 0x50]
call fcn.0041a950
mov eax, dword [ebp - 4]
jmp 0x44c822
mov ecx, dword [ebp - 0x10]
mov edx, str.temp_store
call fcn.0040c4b0
test eax, eax
jne 0x44bc3b
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
test edi, edi
jne 0x44bc2f
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x1d]
cdq
push edx
push eax
mov edx, str.temp_store
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov edx, edi
call fcn.0044b0b0
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.temp_store_directory
call fcn.0040c4b0
test eax, eax
jne 0x44bd1d
mov edi, dword [ebp - 0x14]
test edi, edi
jne 0x44bc9d
cmp dword [0x4b0628], edi
je 0x44c81c
lea edx, [eax + 1]
mov ecx, esi
call fcn.00425320
push edi
push str.temp_store_directory
push edi
xor edx, edx
mov ecx, esi
call fcn.004253b0
add esp, 0xc
lea edx, [edi + 0x5e]
mov ecx, esi
push edi
push dword [0x4b0628]
push edi
push 1
push edi
call fcn.00423cf0
add esp, 0x14
jmp 0x44b8e6
cmp byte [edi], 0
je 0x44bcd2
mov eax, dword [ebp - 4]
lea ecx, [ebp - 0x38]
push ecx
push 1
push edi
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x44bcc0
cmp dword [ebp - 0x38], eax
jne 0x44bcd2
push str.not_a_writable_directory
push dword [ebp - 0xc]
call fcn.0040c320
jmp 0x44c847
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1d], 1
ja 0x44bce3
mov ecx, dword [ebp - 0xc]
call fcn.0044b060
push dword [0x4b0628]
call fcn.00409f40
add esp, 4
cmp byte [edi], 0
je 0x44bd0e
push edi
push 0x4a39f0
call fcn.0040b8a0
add esp, 8
mov dword [0x4b0628], eax
jmp 0x44c81c
mov dword [0x4b0628], 0
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.synchronous
call fcn.0040c4b0
test eax, eax
jne 0x44bd99
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov edi, dword [ebp - 0x14]
test edi, edi
jne 0x44bd66
mov eax, dword [ebp - 8]
mov ecx, ebx
movzx eax, byte [eax + 9]
dec eax
cdq
push edx
mov edx, str.synchronous
push eax
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x1c], 0
jne 0x44bd82
push str.Safety_level_may_not_be_changed_inside_a_transaction
push ebx
call fcn.0040c320
add esp, 8
jmp 0x44c81c
mov ecx, edi
call fcn.0044ae40
mov ebx, dword [ebp - 8]
inc al
mov byte [ebx + 9], al
mov eax, dword [ebp - 4]
jmp 0x44c822
push dword [ebp - 0x14]
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
call fcn.0044b250
add esp, 4
test eax, eax
jne 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.table_info
call fcn.0040c4b0
test eax, eax
jne 0x44bfa8
cmp dword [ebp - 0x14], eax
je 0x44bfa8
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
push dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
call fcn.0043c300
mov edi, eax
add esp, 4
mov dword [ebp - 0x28], edi
test edi, edi
je 0x44c81c
mov edx, 6
mov dword [ebp - 0x1c], 0
mov ecx, esi
call fcn.00425320
push 0
push 0x4a3c04
push 0
xor edx, edx
mov dword [ebx + 0x48], 6
mov ecx, esi
call fcn.004253b0
add esp, 0xc
mov edx, 1
mov ecx, esi
push 0
push str.name
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 2
mov ecx, esi
push 0
push str.type
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 3
mov ecx, esi
push 0
push str.notnull
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 4
mov ecx, esi
push 0
push str.dflt_value
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 5
mov ecx, esi
push 0
push 0x4a3c2c
push 0
call fcn.004253b0
add esp, 0xc
mov edx, edi
mov ecx, ebx
call fcn.0043e1a0
mov eax, dword [ebp - 0x28]
xor ebx, ebx
mov edi, dword [edi + 0xc]
cmp dword [eax + 8], ebx
jle 0x44c81c
cmp byte [edi + 0x17], 0
je 0x44becf
inc dword [ebp - 0x1c]
jmp 0x44bf96
mov eax, ebx
mov edx, 7
sub eax, dword [ebp - 0x1c]
mov ecx, esi
push 1
push eax
call fcn.00423c90
push 0
push dword [edi]
mov edx, 0x5e
mov ecx, esi
push 0
push 2
push 0
call fcn.00423cf0
mov eax, dword [edi + 0xc]
add esp, 0x1c
test eax, eax
mov ecx, 0x49ccd0
mov edx, 0x5e
cmovne ecx, eax
push 0
push ecx
push 0
push 3
push 0
mov ecx, esi
call fcn.00423cf0
xor eax, eax
add esp, 0x14
cmp byte [edi + 0x14], al
mov edx, 7
mov ecx, esi
setne al
push 4
push eax
call fcn.00423c90
mov eax, dword [edi + 8]
add esp, 8
mov ecx, esi
test eax, eax
je 0x44bf5c
push 0
push eax
push 0
push 5
push 0
mov edx, 0x5e
call fcn.00423cf0
add esp, 0x14
jmp 0x44bf6d
push 5
push 0
mov edx, 0xa
call fcn.00423c90
add esp, 8
movzx eax, byte [edi + 0x15]
mov edx, 7
push 6
push eax
mov ecx, esi
call fcn.00423c90
push 6
push 1
mov edx, 0x10
mov ecx, esi
call fcn.00423c90
mov eax, dword [ebp - 0x28]
add esp, 0x10
inc ebx
add edi, 0x18
cmp ebx, dword [eax + 8]
jl 0x44bec1
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.index_info
call fcn.0040c4b0
test eax, eax
jne 0x44c0c8
cmp dword [ebp - 0x14], eax
je 0x44c0c8
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
push dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
call fcn.0043c490
mov edi, eax
add esp, 4
mov dword [ebp - 0x34], edi
test edi, edi
je 0x44c81c
mov eax, dword [edi + 0x10]
mov edx, 3
mov ecx, esi
mov dword [ebp - 0x38], eax
call fcn.00425320
push 0
push str.seqno
push 0
xor edx, edx
mov dword [ebx + 0x48], 3
mov ecx, esi
call fcn.004253b0
add esp, 0xc
mov edx, 1
mov ecx, esi
push 0
push 0x4a3c04
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 2
mov ecx, esi
push 0
push str.name
push 0
call fcn.004253b0
xor ebx, ebx
add esp, 0xc
cmp dword [edi + 4], ebx
jle 0x44c81c
nop
mov eax, dword [edi + 8]
mov edx, 7
push 1
push ebx
mov ecx, esi
mov edi, dword [eax + ebx*4]
call fcn.00423c90
push 2
push edi
mov edx, 7
mov ecx, esi
call fcn.00423c90
mov eax, dword [ebp - 0x38]
lea ecx, [edi + edi*2]
push 0
mov edx, 0x5e
mov eax, dword [eax + 0xc]
push dword [eax + ecx*8]
mov ecx, esi
push 0
push 3
push 0
call fcn.00423cf0
add esp, 0x24
mov edx, 0x10
mov ecx, esi
push 3
push 1
call fcn.00423c90
mov edi, dword [ebp - 0x34]
inc ebx
add esp, 8
cmp ebx, dword [edi + 4]
jl 0x44c060
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.index_list
call fcn.0040c4b0
test eax, eax
jne 0x44c1d7
cmp dword [ebp - 0x14], eax
je 0x44c1d7
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
push dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
call fcn.0043c300
mov esi, eax
add esp, 4
test esi, esi
je 0x44c81c
mov ecx, ebx
call fcn.00450630
mov esi, dword [esi + 0x10]
mov edi, eax
test esi, esi
je 0x44c81c
xor ebx, ebx
mov ecx, edi
lea edx, [ebx + 3]
call fcn.00425320
mov eax, dword [ebp - 0xc]
xor edx, edx
push ebx
push 0x4a3c50
push ebx
mov ecx, edi
mov dword [eax + 0x48], 3
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 1]
mov ecx, edi
push ebx
push str.name
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 2]
mov ecx, edi
push ebx
push str.unique
push ebx
call fcn.004253b0
add esp, 0xc
push 1
push ebx
mov edx, 7
mov ecx, edi
call fcn.00423c90
push 0
push dword [esi]
mov edx, 0x5e
mov ecx, edi
push 0
push 2
push 0
call fcn.00423cf0
xor eax, eax
add esp, 0x1c
cmp byte [esi + 0x18], al
mov edx, 7
mov ecx, edi
setne al
push 3
push eax
call fcn.00423c90
push 3
push 1
mov edx, 0x10
mov ecx, edi
call fcn.00423c90
mov esi, dword [esi + 0x20]
add esp, 0x10
inc ebx
test esi, esi
jne 0x44c178
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.database_list
call fcn.0040c4b0
test eax, eax
jne 0x44c2f1
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
lea edx, [eax + 3]
mov ecx, esi
call fcn.00425320
push 0
push 0x4a3c50
push 0
xor edx, edx
mov dword [ebx + 0x48], 3
mov ecx, esi
call fcn.004253b0
add esp, 0xc
mov edx, 1
mov ecx, esi
push 0
push str.name
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 2
mov ecx, esi
push 0
push str.file
push 0
call fcn.004253b0
mov eax, dword [ebp - 4]
xor ebx, ebx
add esp, 0xc
cmp dword [eax + 4], ebx
jle 0x44c81f
xor edi, edi
mov eax, dword [eax + 8]
cmp dword [eax + edi + 4], 0
je 0x44c2dc
push 1
push ebx
mov edx, 7
mov ecx, esi
call fcn.00423c90
mov eax, dword [ebp - 4]
mov edx, 0x5e
push 0
mov ecx, esi
mov eax, dword [eax + 8]
push dword [eax + edi]
push 0
push 2
push 0
call fcn.00423cf0
mov eax, dword [ebp - 4]
add esp, 0x1c
mov edx, 0x5e
mov ecx, esi
mov eax, dword [eax + 8]
push 0
mov eax, dword [eax + edi + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
push dword [eax + 0x90]
push 0
push 3
push 0
call fcn.00423cf0
add esp, 0x14
mov edx, 0x10
mov ecx, esi
push 3
push 1
call fcn.00423c90
add esp, 8
mov eax, dword [ebp - 4]
inc ebx
add edi, 0x10
cmp ebx, dword [eax + 4]
jl 0x44c264
jmp 0x44c81f
mov ecx, dword [ebp - 0x10]
mov edx, str.collation_list
call fcn.0040c4b0
test eax, eax
jne 0x44c3ae
lea edx, [eax + 2]
mov dword [ebp - 0x1c], eax
mov ecx, esi
call fcn.00425320
mov eax, dword [ebp - 0xc]
xor edx, edx
push 0
push 0x4a3c50
push 0
mov ecx, esi
mov dword [eax + 0x48], 2
call fcn.004253b0
add esp, 0xc
mov edx, 1
mov ecx, esi
push 0
push str.name
push 0
call fcn.004253b0
mov ebx, dword [ebp - 4]
add esp, 0xc
mov ebx, dword [ebx + 0x1a4]
test ebx, ebx
je 0x44c81c
nop dword [eax + eax]
mov edi, dword [ebx + 8]
mov edx, 7
push 1
push dword [ebp - 0x1c]
mov ecx, esi
call fcn.00423c90
inc dword [ebp - 0x1c]
mov edx, 0x5e
push 0
push dword [edi]
mov ecx, esi
push 0
push 2
push 0
call fcn.00423cf0
add esp, 0x1c
mov edx, 0x10
mov ecx, esi
push 2
push 1
call fcn.00423c90
mov ebx, dword [ebx]
add esp, 8
test ebx, ebx
jne 0x44c360
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.foreign_key_list
call fcn.0040c4b0
test eax, eax
jne 0x44c67c
cmp dword [ebp - 0x14], eax
je 0x44c67c
mov esi, dword [ebp - 0xc]
mov ecx, esi
call fcn.0044dac0
test eax, eax
jne 0x44c84a
push dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
mov ecx, dword [ebp - 4]
call fcn.0043c300
mov ebx, eax
add esp, 4
mov dword [ebp - 0x38], ebx
test ebx, ebx
je 0x44c81c
mov ecx, esi
call fcn.00450630
mov esi, dword [ebx + 0x24]
mov edi, eax
test esi, esi
je 0x44c81c
xor ebx, ebx
mov ecx, edi
mov dword [ebp - 0x20], ebx
lea edx, [ebx + 8]
call fcn.00425320
mov eax, dword [ebp - 0xc]
xor edx, edx
push ebx
push 0x49dfc4
push ebx
mov ecx, edi
mov dword [eax + 0x48], 8
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 1]
mov ecx, edi
push ebx
push 0x4a3c50
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 2]
mov ecx, edi
push ebx
push str.table
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 3]
mov ecx, edi
push ebx
push str.from
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 4]
mov ecx, edi
push ebx
push 0x4a3c98
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 5]
mov ecx, edi
push ebx
push str.on_update
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 6]
mov ecx, edi
push ebx
push str.on_delete
push ebx
call fcn.004253b0
add esp, 0xc
lea edx, [ebx + 7]
mov ecx, edi
push ebx
push str.match
push ebx
call fcn.004253b0
add esp, 0xc
nop dword [eax + eax]
cmp dword [esi + 0x14], 0
mov dword [ebp - 0x1c], 0
jle 0x44c668
lea eax, [esi + 0x24]
mov dword [ebp - 0xc], eax
nop word [eax + eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x34], eax
movzx eax, byte [esi + 0x19]
add eax, 0xfffffffa
cmp eax, 3
ja case.default.0x44c502
jmp dword [eax*4 + 0x44d328]
mov dword [ebp - 0x18], str.SET_NULL
jmp 0x44c534
mov dword [ebp - 0x18], str.SET_DEFAULT
jmp 0x44c534
mov dword [ebp - 0x18], str.CASCADE
jmp 0x44c534
mov dword [ebp - 0x18], str.RESTRICT
jmp 0x44c534
mov dword [ebp - 0x18], str.NO_ACTION
movzx eax, byte [esi + 0x1a]
add eax, 0xfffffffa
cmp eax, 3
ja case.default.0x44c540
jmp dword [eax*4 + 0x44d338]
mov ebx, str.SET_NULL
jmp 0x44c568
mov ebx, str.SET_DEFAULT
jmp 0x44c568
mov ebx, str.CASCADE
jmp 0x44c568
mov ebx, str.RESTRICT
jmp 0x44c568
mov ebx, str.NO_ACTION
push 1
push dword [ebp - 0x20]
mov edx, 7
mov ecx, edi
call fcn.00423c90
push 2
push dword [ebp - 0x1c]
mov edx, 7
mov ecx, edi
call fcn.00423c90
push 0
push dword [esi + 8]
mov edx, 0x5e
mov ecx, edi
push 0
push 3
push 0
call fcn.00423cf0
mov eax, dword [ebp - 0xc]
add esp, 0x24
mov edx, 0x5e
mov eax, dword [eax]
push 0
lea ecx, [eax + eax*2]
mov eax, dword [ebp - 0x38]
mov eax, dword [eax + 0xc]
push dword [eax + ecx*8]
mov ecx, edi
push 0
push 4
push 0
call fcn.00423cf0
mov eax, dword [ebp - 0x34]
add esp, 0x14
test eax, eax
mov edx, 0xa
mov ecx, edi
push 0
push eax
push 0
mov eax, 0x5e
push 5
push 0
cmovne edx, eax
call fcn.00423cf0
add esp, 0x14
mov ecx, edi
push 0
push ebx
push 0
push 6
mov ebx, 0x5e
push 0
mov edx, ebx
call fcn.00423cf0
add esp, 0x14
mov edx, ebx
mov ecx, edi
push 0
push dword [ebp - 0x18]
push 0
push 7
push 0
call fcn.00423cf0
add esp, 0x14
mov edx, ebx
mov ecx, edi
push 0
push str.NONE
push 0
push 8
push 0
call fcn.00423cf0
add esp, 0x14
lea edx, [ebx - 0x4e]
mov ecx, edi
push 8
push 1
call fcn.00423c90
mov ecx, dword [ebp - 0x1c]
add esp, 8
mov eax, dword [ebp - 0xc]
inc ecx
add eax, 8
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0xc], eax
cmp ecx, dword [esi + 0x14]
jl 0x44c4f0
mov ebx, dword [ebp - 0x20]
mov esi, dword [esi + 4]
inc ebx
mov dword [ebp - 0x20], ebx
test esi, esi
jne 0x44c4d0
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.case_sensitive_like
call fcn.0040c4b0
test eax, eax
jne 0x44c6b1
mov edi, dword [ebp - 0x14]
test edi, edi
je 0x44c81c
mov ecx, edi
call fcn.0044ae40
mov ecx, dword [ebp - 4]
mov dl, al
and edx, 1
call fcn.00444890
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.integrity_check
call fcn.0040c4b0
test eax, eax
je 0x44cba4
mov ecx, dword [ebp - 0x10]
mov edx, str.quick_check
call fcn.0040c4b0
test eax, eax
je 0x44cba4
mov ecx, dword [ebp - 0x10]
mov edx, str.encoding
call fcn.0040c4b0
test eax, eax
jne 0x44c86b
mov edi, dword [ebp - 0x14]
test edi, edi
jne 0x44c7ab
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
lea edx, [edi + 1]
mov ecx, esi
call fcn.00425320
push edi
push str.encoding
push edi
xor edx, edx
mov ecx, esi
call fcn.004253b0
add esp, 0xc
lea edx, [edi + 0x5e]
mov ecx, esi
push 1
push edi
call fcn.00423c90
mov eax, dword [ebx]
add esp, 8
mov edx, dword [esi + 4]
mov ecx, dword [esi]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
movzx eax, byte [eax + 0x4d]
mov ebx, dword [eax*8 + 0x49fb00]
test edx, edx
je 0x44c798
cmp byte [ecx + 0x1e], 0
jne 0x44c798
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
add esp, 4
mov dword [edi + 0x10], 0
test ebx, ebx
jne 0x44c78c
mov dword [edi + 0x10], ebx
mov byte [edi + 1], bl
jmp 0x44b8e6
mov dword [edi + 0x10], ebx
mov byte [edi + 1], 0xfe
jmp 0x44b8e6
push ebx
mov edx, 0xfffffffe
call fcn.00424180
add esp, 4
jmp 0x44b8e6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov al, byte [eax + 0x4e]
and al, 5
cmp al, 1
je 0x44c81c
mov eax, dword [str.UTF8]
mov esi, 0x49fb00
test eax, eax
je 0x44c806
nop dword [eax + eax]
mov edx, eax
mov ecx, edi
call fcn.0040c4b0
test eax, eax
je 0x44c7e9
mov eax, dword [esi + 8]
add esi, 8
test eax, eax
jne 0x44c7d0
jmp 0x44c80b
mov al, byte [esi + 4]
movzx ecx, al
test al, al
jne 0x44c7f8
mov ecx, 2
mov eax, dword [ebp - 0xc]
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], cl
cmp dword [esi], 0
jne 0x44c81c
push edi
push str.unsupported_encoding:__s
push dword [ebp - 0xc]
call fcn.0040c320
add esp, 0xc
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 8]
cmp byte [eax + 0x1c], 0
je 0x44c84d
mov edx, dword [eax + 0xc]
mov eax, edx
mov ecx, dword [ebx + 4]
shr eax, 0x16
shr edx, 0x15
and eax, 1
and edx, 1
push eax
push edx
movzx edx, byte [ebx + 9]
call fcn.0041a9b0
add esp, 8
mov eax, dword [ebp - 4]
push dword [ebp - 0x10]
push eax
call fcn.00409fe0
push dword [ebp - 0x14]
push dword [ebp - 4]
call fcn.00409fe0
add esp, 0x10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x10]
mov edx, str.schema_version
call fcn.0040c4b0
test eax, eax
je 0x44ca86
mov ecx, dword [ebp - 0x10]
mov edx, str.user_version
call fcn.0040c4b0
test eax, eax
je 0x44ca86
mov ecx, dword [ebp - 0x10]
mov edx, str.freelist_count
call fcn.0040c4b0
test eax, eax
je 0x44ca86
mov ecx, dword [ebp - 0x10]
mov edx, str.compile_options
call fcn.0040c4b0
test eax, eax
jne 0x44c935
lea edx, [eax + 1]
mov ecx, esi
xor edi, edi
call fcn.00425320
mov eax, dword [ebp - 0xc]
xor edx, edx
push edi
push str.compile_option
push edi
mov ecx, esi
mov dword [eax + 0x48], 1
call fcn.004253b0
add esp, 0xc
push edi
call fcn.00407190
add esp, 4
test eax, eax
je 0x44c81c
lea ecx, [edi + 0x5e]
push 0
push eax
push 0
push 1
mov edx, ecx
inc edi
push 0
mov ecx, esi
call fcn.00423cf0
add esp, 0x14
mov edx, 0x10
mov ecx, esi
push 1
push 1
call fcn.00423c90
push edi
call fcn.00407190
add esp, 0xc
mov ecx, 0x5e
test eax, eax
jne 0x44c8f8
jmp 0x44c81c
mov ecx, dword [ebp - 0x10]
mov edx, str.wal_checkpoint
call fcn.0040c4b0
test eax, eax
jne 0x44ca10
cmp dword [edi], 0
mov eax, 0xa
cmovne eax, ebx
mov ebx, dword [ebp - 0x14]
xor edi, edi
mov dword [ebp - 0x38], eax
test ebx, ebx
je 0x44c98c
mov edx, str.full
mov ecx, ebx
call fcn.0040c4b0
test eax, eax
jne 0x44c976
lea edi, [eax + 1]
jmp 0x44c98c
mov edx, str.restart
mov ecx, ebx
call fcn.0040c4b0
test eax, eax
mov eax, 2
cmove edi, eax
mov ebx, dword [ebp - 0xc]
mov ecx, ebx
call fcn.0044dac0
test eax, eax
jne 0x44c84a
lea edx, [eax + 3]
mov ecx, esi
call fcn.00425320
push 0
push str.busy
push 0
xor edx, edx
mov dword [ebx + 0x48], 3
mov ecx, esi
call fcn.004253b0
add esp, 0xc
mov edx, 1
mov ecx, esi
push 0
push 0x4a3a90
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 2
mov ecx, esi
push 0
push str.checkpointed
push 0
call fcn.004253b0
add esp, 0xc
mov edx, 0x7d
mov ecx, esi
push 1
push edi
push dword [ebp - 0x38]
call fcn.00423b70
add esp, 0xc
push 3
jmp 0x44b8e8
mov ecx, dword [ebp - 0x10]
mov edx, str.wal_autocheckpoint
call fcn.0040c4b0
test eax, eax
jne 0x44c81c
mov edi, dword [ebp - 0x14]
test edi, edi
je 0x44ca3f
mov ecx, edi
call fcn.0040cd90
push eax
push dword [ebp - 4]
call fcn.00465750
add esp, 8
mov eax, dword [ebp - 4]
cmp dword [eax + 0xc0], 0x465710
jne 0x44ca6c
mov eax, dword [eax + 0xc4]
mov ecx, dword [ebp - 0xc]
cdq
push edx
mov edx, str.wal_autocheckpoint
push eax
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov ecx, dword [ebp - 0xc]
xor eax, eax
cdq
push edx
mov edx, str.wal_autocheckpoint
push eax
call fcn.0044b120
add esp, 8
jmp 0x44c81c
mov edx, ebx
mov ecx, esi
call fcn.00424730
mov ecx, dword [ebp - 0x10]
movsx eax, byte [ecx]
add eax, 0xffffffba
cmp eax, 0x2d
ja case.0x44caa4.71
movzx eax, byte [eax + 0x44d354]
jmp dword [eax*4 + 0x44d348]
xor edi, edi
jmp 0x44cabb
mov edi, 1
jmp 0x44cabb
mov edi, 6
cmp dword [ebp - 0x14], 0
je 0x44cb3f
test edi, edi
je 0x44cb3f
push 0x49e864
mov edx, 3
mov ecx, esi
call fcn.004240d0
add esp, 4
mov dword [ebp - 0x28], eax
cmp dword [esi + 0x1c], eax
jbe 0x44caeb
mov ecx, dword [esi + 4]
lea edx, [eax + eax*4]
mov dword [ecx + edx*4 + 4], ebx
mov ecx, dword [ebp - 0x14]
call fcn.0040cd90
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x28]
lea ecx, [eax + 1]
cmp dword [esi + 0x1c], ecx
jbe 0x44cb11
mov eax, dword [ebp - 0x38]
lea edx, [ecx + ecx*4]
mov ecx, dword [esi + 4]
mov dword [ecx + edx*4 + 4], eax
mov eax, dword [ebp - 0x28]
lea edx, [eax + 2]
cmp dword [esi + 0x1c], edx
jbe 0x44c81c
mov eax, dword [esi + 4]
lea ecx, [edx + edx*4]
mov dword [eax + ecx*4 + 4], ebx
cmp dword [esi + 0x1c], edx
jbe 0x44c81c
mov eax, dword [esi + 4]
lea ecx, [edx + edx*4]
mov dword [eax + ecx*4 + 8], edi
jmp 0x44c81c
push 0x49e91c
mov edx, 3
mov ecx, esi
call fcn.004240d0
add esp, 4
cmp dword [esi + 0x1c], eax
jbe 0x44cb62
mov ecx, dword [esi + 4]
lea edx, [eax + eax*4]
mov dword [ecx + edx*4 + 4], ebx
lea edx, [eax + 1]
cmp dword [esi + 0x1c], edx
jbe 0x44cb83
mov eax, dword [esi + 4]
lea ecx, [edx + edx*4]
mov dword [eax + ecx*4 + 4], ebx
cmp dword [esi + 0x1c], edx
jbe 0x44cb83
mov eax, dword [esi + 4]
lea ecx, [edx + edx*4]
mov dword [eax + ecx*4 + 0xc], edi
mov edx, 1
mov ecx, esi
call fcn.00425320
push 0xffffffffffffffff
push dword [ebp - 0x10]
xor edx, edx
mov ecx, esi
push 0
call fcn.004253b0
jmp 0x44c819
mov eax, dword [ebp - 0x10]
xor ecx, ecx
mov edi, dword [ebp - 0xc]
cmp byte [eax], 0x71
sete cl
mov dword [ebp - 0x24], ecx
mov ecx, edi
call fcn.0044dac0
test eax, eax
jne 0x44c84a
lea edx, [eax + 1]
mov dword [edi + 0x48], 6
mov ecx, esi
call fcn.00425320
push 0
push str.integrity_check
push 0
xor edx, edx
mov ecx, esi
call fcn.004253b0
mov eax, dword [ebp - 0x14]
mov ebx, 0x64
add esp, 0xc
mov dword [ebp - 0x38], ebx
mov dword [ebp - 0x28], ebx
test eax, eax
je 0x44cc16
lea edx, [ebp - 0x28]
mov ecx, eax
call fcn.0040ccc0
mov ebx, dword [ebp - 0x28]
mov eax, 0x64
test ebx, ebx
cmovle ebx, eax
mov dword [ebp - 0x38], ebx
push 1
push ebx
mov edx, 7
mov ecx, esi
call fcn.00423c90
mov eax, dword [ebp - 4]
xor ecx, ecx
add esp, 8
mov dword [ebp - 0x28], ecx
cmp dword [eax + 4], ecx
jle 0x44d204
mov dword [ebp - 0x1c], ecx
nop dword [eax]
mov edx, ecx
xor ebx, ebx
mov ecx, edi
call fcn.00440520
push 1
lea edx, [ebx + 0x78]
mov ecx, esi
call fcn.00423c30
add esp, 4
lea edx, [ebx + 6]
mov ecx, esi
mov edi, eax
push ebx
push ebx
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 8
cmp edx, edi
jbe 0x44cc7c
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x1c]
mov eax, dword [eax + 8]
mov eax, dword [eax + ecx + 0xc]
add eax, 8
mov dword [ebp - 0x34], eax
mov eax, dword [eax + 8]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x44cceb
nop dword [eax]
mov edi, dword [eax + 8]
mov edx, 7
lea eax, [ebx + 2]
mov ecx, esi
push eax
push dword [edi + 0x14]
call fcn.00423c90
mov edi, dword [edi + 0x10]
add esp, 8
inc ebx
test edi, edi
je 0x44ccdf
lea eax, [ebx + 2]
mov edx, 7
push eax
push dword [edi + 0x14]
mov ecx, esi
call fcn.00423c90
mov edi, dword [edi + 0x20]
add esp, 8
inc ebx
test edi, edi
jne 0x44ccc1
mov eax, dword [ebp - 0x20]
mov eax, dword [eax]
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x44cca0
mov ecx, dword [ebp - 0xc]
lea eax, [ebx + 4]
cmp dword [ecx + 0x48], eax
jge 0x44ccf9
mov dword [ecx + 0x48], eax
push 1
push ebx
push 2
mov edx, 0x6f
mov ecx, esi
call fcn.00423b70
mov ecx, dword [esi + 4]
add esp, 0xc
test ecx, ecx
je 0x44cd21
mov eax, dword [esi + 0x1c]
mov edx, dword [ebp - 0x28]
lea eax, [eax + eax*4]
mov byte [ecx + eax*4 - 0x11], dl
push 2
mov edx, 0x49
mov ecx, esi
call fcn.00423c30
mov edx, dword [ebp - 0x1c]
mov edi, eax
mov eax, dword [ebp - 4]
add esp, 4
mov ecx, dword [eax + 8]
push 0xffffffffffffffff
push dword [ecx + edx]
push str._in_database__s__n
push eax
call fcn.0040b6b0
add esp, 0xc
mov edx, 0x5e
mov ecx, esi
push eax
push 0
push 3
push 0
call fcn.00423cf0
add esp, 0x14
mov edx, 0xd
mov ecx, esi
push 1
push 4
push 2
call fcn.00423b70
add esp, 0xc
mov edx, 0x5b
mov ecx, esi
push 2
push 3
push 4
call fcn.00423b70
add esp, 0xc
mov edx, 0x10
mov ecx, esi
push 1
push 2
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 8
cmp edx, edi
jbe 0x44cdb4
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
mov eax, dword [ebp - 0x34]
mov ebx, dword [eax + 8]
mov dword [ebp - 0x34], ebx
test ebx, ebx
je 0x44d1e7
mov eax, dword [ebp - 0x24]
test eax, eax
jne 0x44d1e7
mov ebx, dword [ebx + 8]
mov dword [ebp - 0x30], ebx
cmp dword [ebx + 0x10], eax
je 0x44d1d7
push 1
lea edx, [eax + 0x78]
mov ecx, esi
call fcn.00423c30
add esp, 4
mov edx, 6
mov ecx, esi
mov edi, eax
push 0
push 0
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 8
cmp edx, edi
jbe 0x44ce14
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
mov ecx, dword [ebp - 0xc]
mov edx, ebx
push 0x27
push 1
call fcn.00449d00
push 2
push 0
mov edx, 7
mov ecx, esi
call fcn.00423c90
push 0
push 1
mov edx, 0x48
mov ecx, esi
call fcn.00423c90
mov ebx, eax
mov edx, 0x14
push 1
push 2
mov ecx, esi
mov dword [ebp - 0x44], ebx
call fcn.00423c90
mov edi, dword [ebp - 0x30]
add esp, 0x20
mov edi, dword [edi + 0x10]
mov dword [ebp - 0x18], edi
test edi, edi
je 0x44d010
mov ebx, 2
mov dword [ebp - 0x2c], ebx
mov ecx, dword [ebp - 0xc]
mov edx, edi
push 0
push 3
push 1
call fcn.004420a0
mov ecx, dword [edi + 4]
add esp, 0xc
inc ecx
mov edx, 0x34
push ecx
push eax
push 0
push ebx
mov ecx, esi
call fcn.00423e50
push 0x49f474
mov edx, 0xb
mov dword [ebp - 0x3c], eax
mov ecx, esi
call fcn.004240d0
mov edx, dword [esi + 4]
add esp, 0x14
mov ebx, dword [esi]
mov dword [ebp - 0x20], eax
lea ecx, [eax + 1]
test edx, edx
je 0x44cef4
cmp byte [ebx + 0x1e], 0
jne 0x44cef4
test ecx, ecx
jns 0x44cecf
mov ecx, dword [esi + 0x1c]
dec ecx
lea eax, [ecx + ecx*4]
mov ecx, ebx
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
mov dword [edi + 0x10], 0x4a3d0c
mov byte [edi + 1], 0xfe
mov edi, dword [ebp - 0x18]
jmp 0x44cf05
push 0x4a3d0c
mov edx, 0xfffffffe
mov ecx, ebx
call fcn.00424180
mov eax, dword [ebp - 0x20]
add esp, 4
mov edx, dword [esi + 4]
add eax, 3
mov ecx, dword [esi]
test edx, edx
je 0x44cf48
cmp byte [ecx + 0x1e], 0
jne 0x44cf48
test eax, eax
jns 0x44cf25
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
mov dword [edi + 0x10], str._missing_from_index
mov byte [edi + 1], 0xfe
mov edi, dword [ebp - 0x18]
jmp 0x44cf57
push str._missing_from_index
mov edx, 0xfffffffe
call fcn.00424180
mov eax, dword [ebp - 0x20]
add esp, 4
mov edx, dword [esi + 4]
add eax, 4
mov ebx, dword [edi]
mov ecx, dword [esi]
test edx, edx
je 0x44cfc2
cmp byte [ecx + 0x1e], 0
jne 0x44cfc2
test eax, eax
jns 0x44cf79
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
add esp, 4
mov dword [edi + 0x10], 0
test ebx, ebx
jne 0x44cfa5
mov dword [edi + 0x10], ebx
mov byte [edi + 1], bl
mov edi, dword [ebp - 0x18]
jmp 0x44cfcd
mov ecx, ebx
call fcn.0040c250
mov ecx, dword [esi]
mov edx, ebx
push eax
call fcn.0040a3c0
mov dword [edi + 0x10], eax
mov byte [edi + 1], 0xff
mov edi, dword [ebp - 0x18]
jmp 0x44cfca
push ebx
xor edx, edx
call fcn.00424180
add esp, 4
mov eax, dword [ebp - 0x20]
mov edx, dword [esi + 0x1c]
add eax, 9
cmp edx, eax
jbe 0x44cfe4
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esi + 0x1c]
mov eax, dword [ebp - 0x3c]
cmp edx, eax
jbe 0x44cff8
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 8], edx
mov ebx, dword [ebp - 0x2c]
mov edi, dword [edi + 0x20]
inc ebx
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x2c], ebx
test edi, edi
jne 0x44ce73
mov ebx, dword [ebp - 0x44]
lea eax, [ebx + 1]
mov edx, 0x5f
push eax
push 1
mov ecx, esi
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 8
cmp edx, ebx
jbe 0x44d036
mov eax, dword [esi + 4]
lea ecx, [ebx + ebx*4]
mov dword [eax + ecx*4 + 8], edx
mov eax, dword [ebp - 0x30]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x20], eax
test eax, eax
je 0x44d1d4
mov dword [ebp - 0x18], 2
nop
push 1
mov edx, 0x78
mov ecx, esi
call fcn.00423c30
add esp, 4
mov edx, 6
mov ecx, esi
mov edi, eax
push 0
push 0
call fcn.00423c90
mov edx, dword [esi + 0x1c]
add esp, 8
cmp edx, edi
jbe 0x44d087
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
push 0x49e940
mov edx, 0xa
mov ecx, esi
call fcn.004240d0
mov ebx, eax
add esp, 4
lea edi, [ebx + 1]
cmp dword [esi + 0x1c], edi
jbe 0x44d0c4
mov ecx, dword [esi + 4]
lea edx, [edi + edi*4]
mov eax, dword [ebp - 0x18]
mov dword [ecx + edx*4 + 4], eax
cmp dword [esi + 0x1c], edi
jbe 0x44d0c4
mov eax, dword [esi + 4]
lea edx, [ebx + 4]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
lea edi, [ebx + 3]
cmp dword [esi + 0x1c], edi
jbe 0x44d0eb
mov eax, dword [esi + 4]
lea ecx, [edi + edi*4]
mov edx, dword [ebp - 0x18]
mov dword [eax + ecx*4 + 4], edx
cmp dword [esi + 0x1c], edi
jbe 0x44d0eb
mov eax, dword [esi + 4]
lea edx, [ebx + 2]
lea ecx, [edi + edi*4]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esi + 0x1c]
lea eax, [ebx + 4]
cmp edx, eax
jbe 0x44d0ff
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esi + 4]
lea eax, [ebx + 6]
mov ecx, dword [esi]
test edx, edx
je 0x44d139
cmp byte [ecx + 0x1e], 0
jne 0x44d139
test eax, eax
jns 0x44d119
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
mov dword [edi + 0x10], str.wrong__of_entries_in_index
mov byte [edi + 1], 0xfe
jmp 0x44d148
push str.wrong__of_entries_in_index
mov edx, 0xfffffffe
call fcn.00424180
mov ecx, dword [ebp - 0x20]
lea eax, [ebx + 7]
mov edx, dword [esi + 4]
add esp, 4
mov ebx, dword [esi]
mov ecx, dword [ecx]
mov dword [ebp - 0x44], ecx
test edx, edx
je 0x44d1b3
cmp byte [ebx + 0x1e], 0
jne 0x44d1b3
test eax, eax
jns 0x44d16d
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
mov ecx, ebx
push dword [edx + eax*4 + 0x10]
lea edi, [edx + eax*4]
movsx edx, byte [edi + 1]
call fcn.00424180
mov ecx, dword [ebp - 0x44]
add esp, 4
mov dword [edi + 0x10], 0
test ecx, ecx
jne 0x44d19b
mov dword [edi + 0x10], ecx
mov byte [edi + 1], cl
jmp 0x44d1c0
call fcn.0040c250
mov edx, ecx
mov ecx, dword [esi]
push eax
call fcn.0040a3c0
mov dword [edi + 0x10], eax
mov byte [edi + 1], 0xff
jmp 0x44d1bd
push ecx
xor edx, edx
mov ecx, ebx
call fcn.00424180
add esp, 4
mov ebx, dword [ebp - 0x20]
inc dword [ebp - 0x18]
mov ebx, dword [ebx + 0x20]
mov dword [ebp - 0x20], ebx
test ebx, ebx
jne 0x44d050
mov eax, dword [ebp - 0x24]
mov ebx, dword [ebp - 0x34]
mov ebx, dword [ebx]
mov dword [ebp - 0x34], ebx
test ebx, ebx
jne 0x44cdc8
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 4]
inc ecx
add dword [ebp - 0x1c], 0x10
mov edi, dword [ebp - 0xc]
mov dword [ebp - 0x28], ecx
cmp ecx, dword [eax + 4]
jl 0x44cc40
mov ebx, dword [ebp - 0x38]
push 0x4a16d8
mov edx, 4
mov ecx, esi
call fcn.004240d0
mov edi, eax
add esp, 4
cmp dword [esi + 0x1c], edi
jbe 0x44d22b
mov ecx, dword [esi + 4]
lea edx, [edi + edi*4]
neg ebx
mov dword [ecx + edx*4 + 8], ebx
mov edx, dword [esi + 0x1c]
lea eax, [edi + 1]
cmp edx, eax
jbe 0x44d23f
lea ecx, [eax + eax*4]
mov eax, dword [esi + 4]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esi + 4]
lea eax, [edi + 2]
mov ecx, dword [esi]
test edx, edx
je 0x44d27f
cmp byte [ecx + 0x1e], 0
jne 0x44d27f
test eax, eax
jns 0x44d259
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
push dword [edx + eax*4 + 0x10]
lea esi, [edx + eax*4]
movsx edx, byte [esi + 1]
call fcn.00424180
add esp, 4
mov dword [esi + 0x10], 0x4a3d4c
mov byte [esi + 1], 0xfe
jmp 0x44c81c
push 0x4a3d4c
mov edx, 0xfffffffe
call fcn.00424180
add esp, 4
jmp 0x44c81c
mov edi, dword [ebp - 0xc]
mov ecx, edi
call fcn.0044dac0
test eax, eax
jne 0x44c84a
mov edx, ebx
mov ecx, edi
call fcn.00440520
mov eax, dword [ebp - 0x10]
inc dword [edi + 0x48]
mov edi, dword [edi + 0x48]
cmp byte [eax], 0x70
jne 0x44d2d2
push edi
push ebx
mov edx, 0x92
mov ecx, esi
call fcn.00423c90
add esp, 8
jmp 0x44d2ec
mov ecx, dword [ebp - 0x14]
call fcn.0040cd90
push eax
push edi
push ebx
mov edx, 0x93
mov ecx, esi
call fcn.00423b70
add esp, 0xc
push 1
push edi
mov edx, 0x10
mov ecx, esi
call fcn.00423c90
mov edx, 1
mov ecx, esi
call fcn.00425320
push 0xffffffffffffffff
push dword [ebp - 0x10]
xor edx, edx
mov ecx, esi
push 0
call fcn.004253b0
add esp, 0x14
jmp 0x44c81c
mov eax, ecx
jmp 0x44c81f