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

Disassembly:
sub esp, 0x50
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x64]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
xor ebx, ebx
mov dword [esp + 0x14], esi
cmp ebp, ebx
jne 0x1007087b
mov eax, esi
call fcn.10048e70
mov ebp, eax
mov dword [edi + 8], eax
cmp ebp, ebx
je 0x1007392c
push 0x94
call fcn.10049050
add esp, 4
or dword [ebp + 0x64], 0x40
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x68]
push edi
lea ecx, [esp + 0x48]
mov dword [edi + 0x4c], 2
call fcn.10060f50
add esp, 4
cmp eax, ebx
mov dword [esp + 0x18], eax
jl 0x1007392c
mov edx, dword [esi + 0x10]
mov ecx, eax
shl ecx, 4
add edx, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x1c], edx
cmp eax, 1
jne 0x100708cd
mov eax, edi
call fcn.10064c90
test eax, eax
jne 0x1007392c
mov eax, dword [esp + 0x44]
push esi
call fcn.10060da0
mov edi, eax
add esp, 4
mov dword [esp + 0x38], edi
cmp edi, ebx
je 0x1007392c
mov eax, dword [esp + 0x70]
cmp dword [esp + 0x74], ebx
je 0x10070908
push eax
push 0x100db258
call fcn.1002fe70
mov esi, eax
add esp, 8
mov dword [esp + 0x24], esi
jmp 0x10070919
mov ecx, esi
push ecx
call fcn.10060da0
add esp, 4
mov esi, eax
mov dword [esp + 0x24], eax
mov edx, dword [esp + 0x6c]
cmp dword [edx + 4], ebx
jbe 0x1007092e
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
mov dword [esp + 0x20], ecx
jmp 0x10070932
mov dword [esp + 0x20], ebx
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x64]
push edx
push esi
push edi
push 0x13
call fcn.1005ff70
add esp, 0x10
test eax, eax
jne 0x10073912
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x50]
push ecx
push 0xe
push edx
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], edi
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], ebx
push eax
mov dword [eax + 0x1c4], ebx
call fcn.100905b0
add esp, 0x10
mov dword [esp + 0x44], eax
cmp eax, ebx
jne 0x10070a1f
mov edx, dword [esp + 0x50]
cmp edx, ebx
je 0x10073912
mov eax, dword [esp + 0x64]
inc dword [eax + 0x4c]
mov ecx, dword [eax + 0x4c]
push ebx
push edx
push 0x5e
xor eax, eax
xor edx, edx
mov edi, ebp
mov dword [esp + 0x70], ecx
call fcn.10049110
add esp, 0xc
push 1
call fcn.1004a6e0
add esp, 4
push ebx
push str.result
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100709e3
call fcn.10048f70
test eax, eax
jne 0x10070a0d
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x64]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x50]
push eax
call fcn.1002e8b0
add esp, 4
jmp 0x10073912
cmp eax, 0xc
je 0x10070a5b
mov ecx, dword [esp + 0x50]
cmp ecx, ebx
je 0x10070a4c
mov edi, dword [esp + 0x64]
push ecx
push 0x100d7b40
call fcn.10030990
mov ecx, dword [esp + 0x58]
push ecx
call fcn.1002e8b0
mov eax, dword [esp + 0x50]
add esp, 0xc
mov ecx, dword [esp + 0x64]
inc dword [ecx + 0x44]
mov dword [ecx + 0xc], eax
jmp 0x10073912
push str.default_cache_size
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10070bb1
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov ecx, dword [esp + 0x18]
mov edx, 1
shl edx, cl
or dword [ebp + 0x6c], edx
cmp ecx, 1
je 0x10070a9c
mov eax, ebp
call fcn.10049af0
cmp esi, ebx
jne 0x10070b1c
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.cache_size
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
mov eax, dword [esp + 0x74]
add dword [eax + 0x4c], 2
push 0x100ceaf4
push 9
mov eax, ebp
call fcn.10049430
add esp, 0x18
cmp dword [ebp + 0x1c], eax
jbe 0x10070ae7
mov edx, dword [ebp + 4]
mov esi, dword [esp + 0x18]
lea ecx, [eax + eax*4]
mov dword [edx + ecx*4 + 4], esi
lea ecx, [eax + 1]
cmp dword [ebp + 0x1c], ecx
jbe 0x10070afd
mov edx, dword [ebp + 4]
mov esi, dword [esp + 0x18]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 4], esi
add eax, 6
cmp dword [ebp + 0x1c], eax
jbe 0x10073912
mov ecx, dword [ebp + 4]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4 + 4], 0x7d0
jmp 0x10073912
mov ecx, esi
call fcn.10031340
call fcn.100319e0
mov edi, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x64]
push ebx
call fcn.10064e70
mov esi, dword [ebp + 0x1c]
add esp, 4
cmp dword [ebp + 0x20], esi
jg 0x10070b50
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10070b7a
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x40]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x18]
push 1
push 3
push eax
push 0x2e
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax + 0xc]
mov edx, dword [esp + 0x50]
mov dword [ecx + 0x50], edx
mov ecx, dword [eax + 0xc]
mov edx, dword [ecx + 0x50]
mov eax, dword [eax + 4]
push edx
call fcn.1003f710
add esp, 0x14
jmp 0x10073912
push str.page_size
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10070c26
mov eax, dword [esp + 0x1c]
mov edi, dword [eax + 4]
cmp esi, ebx
jne 0x10070bf3
cmp edi, ebx
je 0x10070bd8
mov ecx, dword [edi + 4]
mov ebx, dword [ecx + 0x20]
mov eax, ebx
cdq
push edx
push eax
mov eax, dword [esp + 0x6c]
push str.page_size
call fcn.10070410
add esp, 0xc
jmp 0x10073912
mov ecx, dword [esp + 0x24]
call fcn.10031340
mov edx, dword [esp + 0x14]
push ebx
push 0xffffffffffffffff
mov ebx, edi
mov dword [edx + 0x48], eax
call fcn.1003f850
add esp, 8
cmp eax, 7
jne 0x10073912
mov eax, dword [esp + 0x14]
mov byte [eax + 0x40], 1
jmp 0x10073912
push str.secure_delete
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10070cab
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 4]
or edi, 0xffffffff
mov dword [esp + 0x44], edx
cmp esi, ebx
je 0x10070c58
mov ebx, dword [esp + 0x24]
call fcn.10070270
movzx edi, al
xor ebx, ebx
mov eax, dword [esp + 0x6c]
mov ebp, dword [esp + 0x14]
cmp dword [eax + 4], ebx
jne 0x10070c87
cmp edi, ebx
jl 0x10070c87
xor esi, esi
cmp dword [ebp + 0x14], ebx
jle 0x10070c87
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx + ebx + 4]
mov eax, edi
call fcn.1003f9c0
inc esi
add ebx, 0x10
cmp esi, dword [ebp + 0x14]
jl 0x10070c70
mov ecx, dword [esp + 0x44]
mov eax, edi
call fcn.1003f9c0
cdq
push edx
push eax
mov eax, dword [esp + 0x6c]
push str.secure_delete
call fcn.10070410
add esp, 0xc
jmp 0x10073912
push str.page_count
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x1007381c
push str.max_page_count
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x1007381c
push str.locking_mode
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10070e41
mov dword [esp + 0x64], str.normal
call fcn.10070290
mov edx, eax
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
cmp eax, ebx
jne 0x10070d56
cmp edx, 0xffffffff
jne 0x10070d16
mov ecx, dword [esp + 0x14]
movzx eax, byte [ecx + 0x41]
jmp 0x10070d67
cmp eax, ebx
jne 0x10070d56
mov eax, dword [esp + 0x14]
mov esi, 2
cmp dword [eax + 0x14], esi
jle 0x10070d4f
mov edi, 0x20
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x10]
mov ecx, dword [eax + edi + 4]
mov eax, dword [ecx + 4]
mov eax, dword [eax]
call fcn.1003aea0
mov ecx, dword [esp + 0x14]
inc esi
add edi, 0x10
cmp esi, dword [ecx + 0x14]
jl 0x10070d2d
mov eax, dword [esp + 0x14]
mov byte [eax + 0x41], dl
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + 4]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call fcn.1003aea0
cmp eax, 1
jne 0x10070d74
mov dword [esp + 0x64], str.exclusive
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.locking_mode
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x10070daa
call fcn.10048f70
test eax, eax
je 0x10070daa
mov esi, 1
jmp 0x10070dd0
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10070e31
cmp byte [edi + 0x40], bl
jne 0x10070e31
cmp esi, ebx
jge 0x10070de9
mov eax, dword [ebp + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov ecx, dword [esp + 0x64]
mov dword [esi + 0x10], ebx
cmp ecx, ebx
jne 0x10070e12
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10070f55
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10070f55
mov ecx, dword [esp + 0x64]
xor eax, eax
call fcn.10049560
jmp 0x10070f55
push str.journal_mode
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10070f97
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.journal_mode
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
add esp, 0x10
cmp esi, ebx
jne 0x10070e94
mov dword [esp + 0x64], 0xffffffff
jmp 0x10070ed0
mov ecx, esi
call fcn.10030900
mov dword [esp + 0x44], eax
xor edi, edi
cmp edi, 6
je 0x10070e8a
mov eax, dword [edi*4 + 0x100ceed0]
cmp eax, ebx
je 0x10070e8a
mov ecx, dword [esp + 0x44]
push ecx
push eax
push esi
call fcn.10030ad0
add esp, 0xc
test eax, eax
je 0x10070ec7
inc edi
jmp 0x10070ea1
mov dword [esp + 0x64], edi
cmp edi, 0xffffffff
jne 0x10070ee4
mov eax, dword [esp + 0x6c]
cmp dword [eax + 4], ebx
jne 0x10070ee4
mov dword [esp + 0x18], ebx
mov dword [eax + 4], 1
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0x14]
dec esi
mov edi, 1
mov ecx, esi
rol edi, cl
cmp esi, ebx
jl 0x10070f55
mov eax, esi
shl eax, 4
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x10]
cmp dword [edx + eax + 4], ebx
je 0x10070f47
cmp esi, dword [esp + 0x18]
je 0x10070f1e
mov ecx, dword [esp + 0x6c]
cmp dword [ecx + 4], ebx
jne 0x10070f47
or dword [ebp + 0x6c], edi
cmp esi, 1
je 0x10070f2f
mov ecx, esi
mov eax, ebp
call fcn.10049af0
mov edx, dword [esp + 0x64]
push edx
push 1
push esi
push 0xa
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esp + 0x50]
add esp, 0x10
sub eax, 0x10
dec esi
ror edi, 1
cmp esi, ebx
mov dword [esp + 0x40], eax
jge 0x10070f02
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10070f6c
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10073912
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
jmp 0x10073912
push str.journal_size_limit
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x1007101f
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + 4]
mov edi, dword [edx]
or eax, 0xffffffff
mov ecx, 0xfffffffe
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], eax
cmp esi, ebx
je 0x10070ffe
lea eax, [esp + 0x48]
push 0xf4240
push eax
mov al, 1
mov ecx, esi
call fcn.10031090
mov eax, dword [esp + 0x54]
add esp, 8
cmp eax, 0xffffffff
jg 0x10070ffa
jl 0x10070ff3
mov ecx, dword [esp + 0x48]
cmp ecx, 0xffffffff
jae 0x10070ffe
or ecx, 0xffffffff
or eax, ecx
jmp 0x10070ffe
mov ecx, dword [esp + 0x48]
push eax
push ecx
mov ecx, edi
call fcn.1003afe0
push edx
push eax
mov eax, dword [esp + 0x74]
push str.journal_size_limit
call fcn.10070410
add esp, 0x14
jmp 0x10073912
push str.auto_vacuum
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x1007114b
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 4]
mov edi, dword [esp + 0x64]
mov dword [esp + 0x40], edx
call fcn.10074190
test eax, eax
jne 0x10073912
cmp esi, ebx
jne 0x1007107d
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x10071064
call fcn.1003faa0
jmp 0x10071066
xor eax, eax
cdq
push edx
push eax
push str.auto_vacuum
mov eax, edi
call fcn.10070410
add esp, 0xc
jmp 0x10073912
call fcn.100702d0
cmp eax, ebx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x64], eax
mov byte [ecx + 0x42], al
jl 0x10073912
push eax
mov eax, dword [esp + 0x44]
call fcn.1003fa30
add esp, 4
test eax, eax
jne 0x10073912
mov esi, dword [esp + 0x64]
cmp esi, 1
je 0x100710bc
cmp esi, 2
jne 0x10073912
push 0x100ceee8
push 6
mov eax, ebp
call fcn.10049430
mov ecx, dword [esp + 0x20]
add esp, 8
cmp dword [ebp + 0x1c], eax
jbe 0x100710e0
mov edi, dword [ebp + 4]
lea edx, [eax + eax*4]
mov dword [edi + edx*4 + 4], ecx
lea edx, [eax + 1]
cmp dword [ebp + 0x1c], edx
jbe 0x100710f2
mov edi, dword [ebp + 4]
lea edx, [edx + edx*4]
mov dword [edi + edx*4 + 4], ecx
lea edx, [eax + 2]
cmp dword [ebp + 0x1c], edx
jbe 0x10071107
mov ebx, dword [ebp + 4]
lea edi, [eax + 4]
lea edx, [edx + edx*4]
mov dword [ebx + edx*4 + 8], edi
lea edx, [eax + 4]
cmp dword [ebp + 0x1c], edx
jbe 0x1007111a
mov edi, dword [ebp + 4]
dec esi
lea edx, [edx + edx*4]
mov dword [edi + edx*4 + 4], esi
add eax, 5
cmp dword [ebp + 0x1c], eax
jbe 0x1007112c
mov edx, dword [ebp + 4]
lea eax, [eax + eax*4]
mov dword [edx + eax*4 + 4], ecx
mov eax, 1
shl eax, cl
or dword [ebp + 0x6c], eax
cmp ecx, 1
je 0x10073912
mov eax, ebp
call fcn.10049af0
jmp 0x10073912
push str.incremental_vacuum
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071291
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
cmp esi, ebx
je 0x1007118e
lea ecx, [esp + 0x34]
push ecx
push esi
call fcn.10031270
add esp, 8
test eax, eax
je 0x1007118e
cmp dword [esp + 0x34], ebx
jg 0x10071196
mov dword [esp + 0x34], Ordinal_2
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x64]
push ebx
call fcn.10064e70
mov esi, dword [ebp + 0x1c]
add esp, 4
cmp dword [ebp + 0x20], esi
jg 0x100711ba
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100711e4
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x34]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x18]
push eax
push 0x83
mov eax, ebp
call fcn.100490a0
mov dword [esp + 0x6c], eax
push 1
push 0x1e
mov eax, ebp
call fcn.100490a0
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x1007121a
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071244
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x20
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 0xffffffff
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10071257
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071281
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x64]
mov byte [eax], 0x7e
mov byte [eax + 3], bl
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
mov edx, ebp
call fcn.10049540
jmp 0x10073912
push str.cache_size
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071301
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
cmp esi, ebx
jne 0x100712d9
mov edx, dword [esp + 0x1c]
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push str.cache_size
mov eax, edi
call fcn.10070410
add esp, 0xc
jmp 0x10073912
mov ecx, esi
call fcn.10031340
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0xc]
mov dword [edx + 0x50], eax
mov eax, dword [ecx + 0xc]
mov edx, dword [eax + 0x50]
mov eax, dword [ecx + 4]
push edx
call fcn.1003f710
add esp, 4
jmp 0x10073912
push str.mmap_size
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071416
cmp esi, ebx
je 0x100713b6
lea eax, [esp + 0x48]
push 0x3e8
push eax
mov al, 1
mov ecx, esi
call fcn.10031090
mov ecx, dword [esp + 0x54]
add esp, 8
cmp ecx, ebx
jg 0x10071359
jl 0x10071345
cmp dword [esp + 0x48], ebx
jae 0x10071359
mov ecx, dword [0x100ef288]
mov dword [esp + 0x48], ecx
mov ecx, dword [0x100ef28c]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x14]
cmp dword [edx + 4], ebx
jne 0x10071370
mov eax, dword [esp + 0x48]
mov dword [ebp + 0x28], eax
mov dword [ebp + 0x2c], ecx
mov esi, dword [ebp + 0x14]
sub esi, 1
js 0x100713ba
mov edi, esi
shl edi, 4
lea ecx, [ecx]
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + edi + 4]
cmp eax, ebx
je 0x100713ac
cmp esi, dword [esp + 0x18]
je 0x1007139a
mov edx, dword [esp + 0x6c]
cmp dword [edx + 4], ebx
jne 0x100713ac
push ecx
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.1003f760
mov ecx, dword [esp + 0x54]
add esp, 8
dec esi
sub edi, 0x10
cmp esi, ebx
jge 0x10071380
jmp 0x100713ba
mov ebp, dword [esp + 0x14]
or eax, 0xffffffff
lea edx, [esp + 0x48]
push edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
push 0x12
push eax
push ebp
call fcn.100905b0
add esp, 0x10
cmp eax, ebx
jne 0x100713fe
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x64]
push ecx
push edx
push str.mmap_size
call fcn.10070410
add esp, 0xc
jmp 0x10073912
cmp eax, 0xc
je 0x10073912
mov ecx, dword [esp + 0x64]
inc dword [ecx + 0x44]
mov dword [ecx + 0xc], eax
jmp 0x10073912
push str.temp_store
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x1007145d
cmp esi, ebx
jne 0x1007144d
mov eax, dword [esp + 0x14]
movzx eax, byte [eax + 0x3f]
cdq
push edx
push eax
mov eax, dword [esp + 0x6c]
push str.temp_store
call fcn.10070410
add esp, 0xc
jmp 0x10073912
mov edi, dword [esp + 0x64]
mov eax, esi
call fcn.100703a0
jmp 0x10073912
push str.temp_store_directory
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100715fe
cmp esi, ebx
jne 0x1007157a
cmp dword [0x100f26d4], ebx
je 0x10073912
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.temp_store_directory
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
mov ecx, dword [0x100f26d4]
mov dword [esp + 0x74], ecx
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100714c9
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x100714c9
mov eax, 1
jmp 0x100714f1
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, esi
mov esi, dword [ebp + 4]
mov edi, dword [ebp]
cmp esi, ebx
je 0x1007154a
cmp byte [edi + 0x40], bl
jne 0x1007154a
cmp eax, ebx
jge 0x10071508
mov eax, dword [ebp + 0x1c]
dec eax
lea ecx, [eax + eax*4]
movsx eax, byte [esi + ecx*4 + 1]
lea esi, [esi + ecx*4]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov ecx, dword [esp + 0x64]
mov dword [esi + 0x10], ebx
cmp ecx, ebx
jne 0x1007152e
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10071555
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10071555
mov ecx, dword [esp + 0x64]
xor eax, eax
call fcn.10049560
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x1007156c
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10073912
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
jmp 0x10070f75
cmp byte [esi], bl
je 0x100715b5
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
lea edx, [esp + 0x44]
push edx
push 1
push esi
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x1007159f
cmp dword [esp + 0x44], ebx
jne 0x100715b5
mov edi, dword [esp + 0x64]
push str.not_a_writable_directory
call fcn.10030990
add esp, 4
jmp 0x10073912
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x3f], 1
ja 0x100715c8
mov eax, dword [esp + 0x64]
call fcn.10070350
mov edx, dword [0x100f26d4]
push edx
call fcn.1002e8b0
add esp, 4
cmp byte [esi], bl
je 0x100715f3
push esi
push 0x100d7b40
call fcn.1002ff50
add esp, 8
mov dword [0x100f26d4], eax
jmp 0x10073912
mov dword [0x100f26d4], ebx
jmp 0x10073912
push str.data_store_directory
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100716b0
cmp esi, ebx
jne 0x1007164d
cmp dword [0x100f26d8], ebx
je 0x10073912
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.data_store_directory
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
mov eax, dword [0x100f26d8]
mov dword [esp + 0x74], eax
jmp 0x100714ac
cmp byte [esi], bl
je 0x1007167a
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
lea edx, [esp + 0x44]
push edx
push 1
push esi
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x1007159f
cmp dword [esp + 0x44], ebx
je 0x1007159f
mov ecx, dword [0x100f26d8]
push ecx
call fcn.1002e8b0
add esp, 4
cmp byte [esi], bl
je 0x100716a5
push esi
push 0x100d7b40
call fcn.1002ff50
add esp, 8
mov dword [0x100f26d8], eax
jmp 0x10073912
mov dword [0x100f26d8], ebx
jmp 0x10073912
push str.synchronous
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071739
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
cmp esi, ebx
jne 0x100716f7
mov edx, dword [esp + 0x1c]
movzx eax, byte [edx + 8]
dec eax
cdq
push edx
push eax
push str.synchronous
mov eax, edi
call fcn.10070410
add esp, 0xc
jmp 0x10073912
mov eax, dword [esp + 0x14]
cmp byte [eax + 0x3e], bl
jne 0x10071712
push str.Safety_level_may_not_be_changed_inside_a_transaction
call fcn.10030990
add esp, 4
jmp 0x10073912
push 1
push ebx
mov ebx, dword [esp + 0x2c]
call fcn.100701c0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x24]
inc al
push edx
mov byte [ecx + 8], al
call fcn.100705e0
add esp, 0xc
jmp 0x10073912
mov eax, dword [esp + 0x64]
push esi
push eax
mov eax, edi
call fcn.10070670
add esp, 8
test eax, eax
je 0x1007175f
mov ecx, dword [esp + 0x14]
push ecx
call fcn.100705e0
add esp, 4
jmp 0x10073912
push str.table_info
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071c66
cmp esi, ebx
je 0x10071c66
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
push edx
push esi
push eax
call fcn.100605e0
add esp, 0xc
mov dword [esp + 0x20], eax
cmp eax, ebx
je 0x10073912
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], eax
cmp eax, ebx
je 0x100717d6
lea esp, [esp]
mov ecx, dword [eax + 0x30]
and cl, 3
cmp cl, 2
je 0x100717d2
mov eax, dword [eax + 0x14]
cmp eax, ebx
jne 0x100717c0
mov dword [esp + 0x28], eax
push 6
mov edi, ebp
call fcn.1004a6e0
mov edi, dword [esp + 0x68]
mov edx, dword [esp + 0x1c]
add esp, 4
push edx
mov eax, edi
mov dword [edi + 0x4c], 6
call fcn.10064d20
add esp, 4
push ebx
push 0x100db3c4
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db3c8
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db3d0
push ebx
push 2
mov ecx, ebp
call fcn.1004a760
push ebx
push str.notnull
push ebx
push 3
mov ecx, ebp
call fcn.1004a760
add esp, 0x40
push ebx
push str.dflt_value
push ebx
push 4
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db3ec
push ebx
push 5
mov ecx, ebp
call fcn.1004a760
mov esi, dword [esp + 0x40]
push esi
push edi
call fcn.10062600
mov eax, dword [esi + 4]
xor ecx, ecx
add esp, 0x28
cmp cx, word [esi + 0x26]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x64], eax
jge 0x10073912
mov ecx, 1
mov edx, dword [esp + 0x64]
test byte [edx + 0x16], 2
je 0x1007189b
add dword [esp + 0x2c], ecx
jmp 0x10071c3d
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100718b3
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100718dc
mov ecx, 1
mov edx, dword [ebp + 4]
add dword [ebp + 0x1c], ecx
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x30]
sub edx, dword [esp + 0x2c]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax]
mov dword [esp + 0x34], ecx
jg 0x10071900
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10071900
mov esi, 1
jmp 0x10071925
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10071982
cmp byte [edi + 0x40], bl
jne 0x10071982
cmp esi, ebx
jge 0x1007193e
mov eax, dword [ebp + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10071962
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x1007198d
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x1007198d
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov eax, dword [esp + 0x64]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x34], eax
cmp eax, ebx
jne 0x100719a4
mov dword [esp + 0x34], 0x100d767b
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100719be
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x100719be
mov esi, 1
jmp 0x100719e3
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10071a3f
cmp byte [edi + 0x40], bl
jne 0x10071a3f
cmp esi, ebx
jge 0x100719fc
mov eax, dword [ebp + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movsx eax, byte [esi + 1]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10071a1f
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10071a4a
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10071a4a
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov edx, dword [esp + 0x64]
mov esi, dword [ebp + 0x1c]
xor ecx, ecx
cmp byte [edx + 0x14], bl
setne cl
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x44], ecx
jg 0x10071a6d
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071a96
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x44]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], 4
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
mov eax, dword [eax + 8]
mov esi, dword [ebp + 0x1c]
mov dword [esp + 0x34], eax
cmp eax, ebx
je 0x10071b51
cmp dword [ebp + 0x20], esi
jg 0x10071ac3
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10071ac3
mov esi, 1
jmp 0x10071ae8
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 5
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10071b44
cmp byte [edi + 0x40], bl
jne 0x10071b44
cmp esi, ebx
jge 0x10071b01
mov eax, dword [ebp + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movsx eax, byte [esi + 1]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10071b24
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10071b86
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10071b86
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
jmp 0x10071b86
cmp dword [ebp + 0x20], esi
jg 0x10071b61
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071b86
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x18
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 5
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
test byte [eax + 0x16], 1
jne 0x10071b94
xor esi, esi
jmp 0x10071bc0
mov eax, dword [esp + 0x28]
mov esi, 1
cmp eax, ebx
je 0x10071bc0
mov ecx, dword [esp + 0x20]
movsx ecx, word [ecx + 0x26]
cmp ecx, esi
jl 0x10071bc0
mov eax, dword [eax + 4]
mov edx, dword [esp + 0x30]
cmp dword [eax], edx
je 0x10071bc0
inc esi
add eax, 4
cmp esi, ecx
jle 0x10071bb4
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x44], eax
jg 0x10071bdb
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071c00
mov eax, dword [esp + 0x44]
inc dword [ebp + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
lea eax, [eax + edx*4]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], esi
mov dword [eax + 8], 6
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10071c13
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071c3d
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 6
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x30]
movsx edx, word [edx + 0x26]
add dword [esp + 0x64], 0x18
mov ecx, 1
add eax, ecx
cmp eax, edx
mov dword [esp + 0x30], eax
jl 0x10071888
jmp 0x10073912
push str.index_info
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10071ec5
cmp esi, ebx
je 0x10071ec5
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push esi
call fcn.100607d0
add esp, 8
mov dword [esp + 0x30], eax
cmp eax, ebx
je 0x10073912
mov esi, eax
mov ecx, dword [esi + 0xc]
push 3
mov edi, ebp
mov dword [esp + 0x48], ecx
call fcn.1004a6e0
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
add esp, 4
push edx
mov dword [eax + 0x4c], 3
call fcn.10064d20
add esp, 4
push ebx
push str.seqno
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db3c4
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db3c8
push ebx
push 2
mov ecx, ebp
call fcn.1004a760
xor eax, eax
add esp, 0x30
mov dword [esp + 0x64], ebx
cmp ax, word [esi + 0x2c]
jae 0x10073912
jmp 0x10071d28
mov esi, dword [esp + 0x30]
mov ecx, dword [esi + 4]
mov edx, dword [esp + 0x64]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov eax, dword [ecx + edx*4]
mov dword [esp + 0x40], eax
jg 0x10071d49
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071d73
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x64]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10071d86
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071daf
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x40]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
mov edx, dword [ecx + 4]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
lea eax, [eax + eax*2]
mov eax, dword [edx + eax*8]
mov dword [esp + 0x34], eax
jg 0x10071dde
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10071dde
mov esi, 1
jmp 0x10071e03
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10071e5f
cmp byte [edi + 0x40], bl
jne 0x10071e5f
cmp esi, ebx
jge 0x10071e1c
mov eax, dword [ebp + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movsx eax, byte [esi + 1]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10071e3f
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10071e6a
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10071e6a
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10071e7d
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10071ea7
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x64]
movzx edx, word [ecx + 0x2c]
inc eax
cmp eax, edx
mov dword [esp + 0x64], eax
jl 0x10071d24
jmp 0x10073912
push str.index_list
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072123
cmp esi, ebx
je 0x10072123
mov ebp, dword [esp + 0x64]
mov edi, ebp
call fcn.10074190
test eax, eax
jne 0x10073912
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
push eax
push esi
push ecx
call fcn.100605e0
add esp, 0xc
mov dword [esp + 0x64], eax
cmp eax, ebx
je 0x10073912
call fcn.100772a0
mov edx, dword [esp + 0x64]
mov esi, eax
mov eax, dword [edx + 8]
mov dword [esp + 0x64], eax
cmp eax, ebx
je 0x10073912
push 3
mov edi, esi
mov dword [esp + 0x34], ebx
call fcn.1004a6e0
mov eax, dword [esp + 0x1c]
add esp, 4
push eax
mov eax, ebp
mov dword [ebp + 0x4c], 3
call fcn.10064d20
add esp, 4
push ebx
push 0x100db410
push ebx
push ebx
mov ecx, esi
call fcn.1004a760
push ebx
push 0x100db3c8
push ebx
push 1
mov ecx, esi
call fcn.1004a760
push ebx
push str.unique
push ebx
push 2
mov ecx, esi
call fcn.1004a760
add esp, 0x30
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
jg 0x10071f9a
mov edi, esi
call fcn.10048f70
test eax, eax
jne 0x10071fc5
mov eax, dword [esi + 4]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x30]
mov ecx, 1
add dword [esi + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov ecx, dword [eax]
mov dword [esp + 0x34], ecx
jg 0x10071fe9
mov edi, esi
call fcn.10048f70
test eax, eax
je 0x10071fe9
mov ebp, 1
jmp 0x1007200f
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esi + 4]
mov edi, dword [esi]
mov eax, ebp
cmp ecx, ebx
je 0x1007206a
cmp byte [edi + 0x40], bl
jne 0x1007206a
cmp ebp, ebx
jge 0x10072027
mov eax, dword [esi + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea ebp, [ecx + edx*4]
mov ecx, dword [ebp + 0x10]
call fcn.10049560
mov dword [ebp + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x1007204b
mov dword [ebp + 0x10], ebx
mov byte [ebp + 1], bl
jmp 0x10072075
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [esi]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [ebp + 0x10], eax
mov byte [ebp + 1], 0xff
xor ebx, ebx
jmp 0x10072075
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov ecx, dword [esp + 0x64]
mov ebp, dword [esi + 0x1c]
xor eax, eax
cmp byte [ecx + 0x2e], bl
setne al
cmp dword [esi + 0x20], ebp
mov dword [esp + 0x44], eax
jg 0x10072098
mov edi, esi
call fcn.10048f70
test eax, eax
jne 0x100720c2
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
mov ecx, dword [esp + 0x44]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
jg 0x100720d5
mov edi, esi
call fcn.10048f70
test eax, eax
jne 0x10072102
mov eax, dword [esi + 4]
mov ecx, 1
add dword [esi + 0x1c], ecx
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
jmp 0x10072107
mov ecx, 1
add dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + 0x14]
mov dword [esp + 0x64], eax
cmp eax, ebx
jne 0x10071f87
jmp 0x10073912
push str.database_list
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100723cb
mov esi, dword [esp + 0x64]
mov edi, esi
call fcn.10074190
test eax, eax
jne 0x10073912
push 3
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push 0x100db410
push ebx
push ebx
mov ecx, ebp
mov dword [esi + 0x4c], 3
call fcn.1004a760
push ebx
push 0x100db3c8
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
push ebx
push str.file
push ebx
push 2
mov ecx, ebp
call fcn.1004a760
mov edx, dword [esp + 0x44]
add esp, 0x30
cmp dword [edx + 0x14], ebx
mov dword [esp + 0x30], ebx
jle 0x10073912
mov dword [esp + 0x64], ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x64]
cmp dword [edx + ecx + 4], ebx
je 0x100723ab
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100721ce
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100721f8
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x30]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x64]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov eax, dword [edx + ecx]
mov dword [esp + 0x34], eax
jg 0x10072224
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10072224
mov esi, 1
jmp 0x10072249
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x100722a5
cmp byte [edi + 0x40], bl
jne 0x100722a5
cmp esi, ebx
jge 0x10072262
mov eax, dword [ebp + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movsx eax, byte [esi + 1]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10072285
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100722b0
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100722b0
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x10]
mov eax, dword [esp + 0x64]
mov eax, dword [eax + edx + 4]
call fcn.100466f0
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x34], eax
jg 0x100722e2
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x100722e2
mov esi, 1
jmp 0x10072307
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10072363
cmp byte [edi + 0x40], bl
jne 0x10072363
cmp esi, ebx
jge 0x10072320
mov eax, dword [ebp + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea esi, [ecx + eax*4]
movsx eax, byte [esi + 1]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x34], ebx
jne 0x10072343
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x1007236e
mov ecx, dword [esp + 0x34]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x1007236e
mov ecx, dword [esp + 0x34]
xor eax, eax
call fcn.10049560
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10072381
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100723ab
mov eax, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
add dword [esp + 0x64], 0x10
inc eax
cmp eax, dword [ecx + 0x14]
mov dword [esp + 0x30], eax
jl 0x100721a6
jmp 0x10073912
push str.collation_list
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072587
push 2
mov edi, ebp
mov dword [esp + 0x38], ebx
call fcn.1004a6e0
mov edx, dword [esp + 0x68]
add esp, 4
push ebx
push 0x100db410
push ebx
push ebx
mov ecx, ebp
mov dword [edx + 0x4c], 2
call fcn.1004a760
push ebx
push 0x100db3c8
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x1b4]
add esp, 0x20
mov dword [esp + 0x30], eax
cmp eax, ebx
je 0x10073912
jmp 0x1007243a
mov eax, dword [esp + 0x30]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax + 8]
mov dword [esp + 0x64], ecx
jg 0x10072454
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x1007247e
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x34]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x64]
mov esi, dword [ebp + 0x1c]
inc dword [esp + 0x34]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax]
mov dword [esp + 0x64], ecx
jg 0x100724a6
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x100724a6
mov esi, 1
jmp 0x100724cb
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
mov eax, esi
cmp ecx, ebx
je 0x10072528
cmp byte [edi + 0x40], bl
jne 0x10072528
cmp esi, ebx
jge 0x100724e4
mov eax, dword [ebp + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea esi, [ecx + edx*4]
mov ecx, dword [esi + 0x10]
call fcn.10049560
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x64], ebx
jne 0x10072508
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x10072533
mov ecx, dword [esp + 0x64]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x10072533
mov ecx, dword [esp + 0x64]
xor eax, eax
call fcn.10049560
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x10072546
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10072570
mov edx, dword [ebp + 4]
mov ecx, 1
add dword [ebp + 0x1c], ecx
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov dword [esp + 0x30], eax
cmp eax, ebx
jne 0x10072436
jmp 0x10073912
push str.foreign_key_list
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072981
cmp esi, ebx
je 0x10072981
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
push ecx
push esi
push edx
call fcn.100605e0
mov esi, eax
add esp, 0xc
mov dword [esp + 0x40], esi
cmp esi, ebx
je 0x10073912
call fcn.100772a0
mov esi, dword [esi + 0x10]
mov ebp, eax
mov dword [esp + 0x20], esi
cmp esi, ebx
je 0x10073912
push 8
mov edi, ebp
mov dword [esp + 0x2c], ebx
call fcn.1004a6e0
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x68]
add esp, 4
push ecx
mov dword [eax + 0x4c], 8
call fcn.10064d20
add esp, 4
push ebx
push 0x100db450
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db410
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
push ebx
push str.table
push ebx
push 2
mov ecx, ebp
call fcn.1004a760
push ebx
push str.from
push ebx
push 3
mov ecx, ebp
call fcn.1004a760
add esp, 0x40
push ebx
push 0x100db45c
push ebx
push 4
mov ecx, ebp
call fcn.1004a760
push ebx
push str.on_update
push ebx
push 5
mov ecx, ebp
call fcn.1004a760
push ebx
push str.on_delete
push ebx
push 6
mov ecx, ebp
call fcn.1004a760
push ebx
push 0x100db478
push ebx
push 7
mov ecx, ebp
call fcn.1004a760
add esp, 0x40
jmp 0x100726a4
mov esi, dword [esp + 0x20]
cmp dword [esi + 0x14], ebx
mov dword [esp + 0x2c], ebx
jle 0x10072965
mov edx, dword [esp + 0x20]
add edx, 0x24
mov dword [esp + 0x64], edx
lea esp, [esp]
mov eax, dword [esp + 0x64]
mov esi, dword [eax + 4]
mov ecx, dword [esp + 0x20]
mov al, byte [ecx + 0x19]
call fcn.100707f0
mov dword [esp + 0x18], eax
mov al, byte [ecx + 0x1a]
call fcn.100707f0
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x44], eax
jg 0x100726fe
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x10072728
mov eax, dword [esp + 0x44]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x28]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x44], eax
jg 0x10072743
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x1007276c
mov eax, dword [esp + 0x44]
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x2c]
lea eax, [eax + eax*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x15
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], 2
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 8]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ecx
mov dword [esp + 0x44], ecx
jg 0x10072799
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10072795
mov eax, 1
jmp 0x100727c0
mov ecx, dword [esp + 0x44]
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, ecx
mov ecx, dword [ebp + 4]
mov edi, dword [ebp]
cmp ecx, ebx
je 0x10072827
cmp byte [edi + 0x40], bl
jne 0x10072827
cmp eax, ebx
jge 0x100727d7
mov eax, dword [ebp + 0x1c]
dec eax
lea edx, [eax + eax*4]
movsx eax, byte [ecx + edx*4 + 1]
lea ecx, [ecx + edx*4]
mov dword [esp + 0x34], ecx
mov ecx, dword [ecx + 0x10]
call fcn.10049560
mov eax, dword [esp + 0x34]
mov dword [eax + 0x10], ebx
cmp dword [esp + 0x30], ebx
jne 0x10072803
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
jmp 0x10072832
mov ecx, dword [esp + 0x30]
call fcn.10030900
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.1002ecd0
mov ecx, dword [esp + 0x34]
mov dword [ecx + 0x10], eax
mov byte [ecx + 1], 0xff
xor ebx, ebx
jmp 0x10072832
mov ecx, dword [esp + 0x30]
xor eax, eax
call fcn.10049560
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx]
lea edx, [eax + eax*2]
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 4]
mov edx, dword [ecx + edx*8]
mov ecx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], ecx
jg 0x1007286b
mov edi, ebp
call fcn.10048f70
test eax, eax
je 0x10072867
mov eax, 1
jmp 0x10072892
mov ecx, dword [esp + 0x44]
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea eax, [ecx + ecx*4]
lea eax, [edx + eax*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 4
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, ecx
mov ecx, dword [esp + 0x3c]
push ecx
push ebp
xor ecx, ecx
call fcn.100496a0
push ebx
push esi
neg esi
sbb esi, esi
and esi, 0x46
xor eax, eax
add esi, 0x18
push esi
lea ecx, [eax + 5]
xor edx, edx
mov edi, ebp
call fcn.10049110
mov esi, dword [ebp + 0x1c]
add esp, 0x14
cmp dword [ebp + 0x20], esi
jg 0x100728d5
call fcn.10048f70
test eax, eax
je 0x100728d5
mov esi, 1
jmp 0x100728fa
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5e
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], 6
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x1c]
push ecx
push ebp
xor ecx, ecx
mov eax, esi
call fcn.100496a0
mov edx, dword [esp + 0x20]
push ebx
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 7]
xor edx, edx
mov edi, ebp
call fcn.10049110
add esp, 0x14
push ebx
xor eax, eax
push str.NONE
push 0x5e
lea ecx, [eax + 8]
xor edx, edx
call fcn.10049110
add esp, 0xc
push ebx
push 8
push 1
push 0x1e
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x30]
add dword [esp + 0x74], 8
inc eax
add esp, 0x10
cmp eax, dword [ecx + 0x14]
mov dword [esp + 0x2c], eax
jl 0x100726c0
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 4]
inc dword [esp + 0x28]
mov dword [esp + 0x20], eax
cmp eax, ebx
jne 0x100726a0
jmp 0x10073912
push str.foreign_key_check
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072e25
mov esi, dword [esp + 0x64]
mov edi, esi
call fcn.10074190
test eax, eax
jne 0x10073912
mov eax, dword [esi + 0x4c]
lea ecx, [eax + 1]
add eax, 5
mov dword [esp + 0x30], eax
inc eax
mov dword [esp + 0x3c], ecx
mov dword [esi + 0x4c], eax
call fcn.100772a0
mov edi, eax
push 4
call fcn.1004a6e0
add esp, 4
push ebx
push str.table
push ebx
push ebx
mov ecx, edi
call fcn.1004a760
push ebx
push 0x100db49c
push ebx
push 1
mov ecx, edi
call fcn.1004a760
push ebx
push str.parent
push ebx
push 2
mov ecx, edi
call fcn.1004a760
push ebx
push str.fkid
push ebx
push 3
mov ecx, edi
call fcn.1004a760
mov edx, dword [esp + 0x58]
add esp, 0x40
push edx
mov eax, esi
call fcn.10064d20
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x44]
mov eax, dword [edx + ecx + 0xc]
mov eax, dword [eax + 0x10]
add esp, 4
cmp eax, ebx
je 0x10073912
jmp 0x10072a40
mov ebp, dword [esp + 0x64]
cmp dword [esp + 0x24], ebx
je 0x10072a66
mov ecx, dword [esp + 0x24]
push ecx
push ebx
mov ebx, dword [esp + 0x28]
mov eax, ebp
call fcn.100606e0
mov esi, eax
add esp, 8
xor eax, eax
xor ebx, ebx
jmp 0x10072a6b
mov esi, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x44], eax
mov dword [esp + 0x2c], esi
cmp esi, ebx
je 0x10072e18
cmp dword [esi + 0x10], ebx
je 0x10072e18
mov edx, dword [esi]
mov eax, dword [esi + 0x20]
mov ecx, dword [esp + 0x18]
push edx
push ebx
push eax
push ecx
mov eax, ebp
call fcn.10060000
movsx edx, word [esi + 0x26]
mov eax, dword [esp + 0x40]
inc eax
add eax, edx
add esp, 0x10
cmp eax, dword [ebp + 0x4c]
jle 0x10072aae
mov dword [ebp + 0x4c], eax
mov eax, dword [esp + 0x18]
push 0x30
push eax
push ebx
mov eax, esi
mov ecx, ebp
call fcn.1006bb60
mov ecx, dword [esi]
add esp, 0xc
push ebx
push ecx
mov ecx, dword [esp + 0x44]
push 0x5e
xor eax, eax
xor edx, edx
call fcn.10049110
mov ebp, dword [esi + 0x10]
add esp, 0xc
mov eax, 1
mov dword [esp + 0x1c], eax
cmp ebp, ebx
je 0x10072bbd
lea esp, [esp]
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x64]
push edx
push ebx
mov ebx, dword [esp + 0x28]
call fcn.100606e0
mov esi, eax
add esp, 8
test esi, esi
je 0x10073912
mov eax, dword [esi]
mov ecx, dword [esi + 0x20]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x64]
push eax
push 0
push ecx
push edx
mov eax, ebx
mov dword [esp + 0x38], 0
call fcn.10060000
push 0
lea eax, [esp + 0x3c]
push eax
push ebp
push esi
push ebx
call fcn.10069640
add esp, 0x24
test eax, eax
jne 0x10073912
mov ebx, dword [esp + 0x28]
test ebx, ebx
jne 0x10072b6e
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push 0x30
push ecx
mov ecx, dword [esp + 0x6c]
push edx
mov eax, esi
call fcn.1006bb60
add esp, 0xc
jmp 0x10072ba4
mov eax, dword [esp + 0x64]
push ebx
push eax
call fcn.10065250
mov ecx, dword [esp + 0x20]
mov edx, dword [ebx + 0x28]
push ecx
mov esi, eax
mov eax, dword [esp + 0x28]
push edx
push eax
push 0x30
mov eax, edi
call fcn.10048ff0
push esi
push edi
mov ecx, 0xfffffff0
or eax, 0xffffffff
call fcn.100496a0
add esp, 0x20
mov ebp, dword [ebp + 4]
inc dword [esp + 0x1c]
xor ebx, ebx
test ebp, ebp
jne 0x10072af0
mov esi, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x64]
cmp dword [ecx + 0x48], eax
jge 0x10072bc9
mov dword [ecx + 0x48], eax
push ebx
push 0x65
mov eax, edi
call fcn.100490a0
mov ebp, dword [esi + 0x10]
add esp, 8
mov dword [esp + 0x48], eax
mov dword [esp + 0x1c], 1
cmp ebp, ebx
je 0x10072df5
mov esi, dword [esp + 0x3c]
mov ecx, dword [ebp + 8]
mov eax, dword [esp + 0x64]
push ecx
push ebx
mov ebx, dword [esp + 0x28]
call fcn.100606e0
lea edx, [esp + 0x48]
push edx
mov edx, dword [esp + 0x70]
lea ecx, [esp + 0x34]
push ecx
push ebp
push eax
xor ebx, ebx
push edx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x5c], ebx
call fcn.10069640
add esp, 0x1c
mov eax, edi
call fcn.10049280
mov dword [esp + 0x34], eax
cmp dword [esp + 0x28], ebx
jne 0x10072ce8
mov ecx, dword [esp + 0x2c]
movsx edx, word [ecx + 0x24]
mov eax, dword [ebp + 0x24]
mov ebx, dword [esp + 0x30]
inc ebx
mov dword [esp + 0x28], eax
cmp eax, edx
je 0x10072c9f
push ebx
push eax
push 0
push 0x29
mov eax, edi
call fcn.10048ff0
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
push ebx
push ecx
push edi
call fcn.1007ef20
mov eax, dword [esp + 0x50]
add esp, 0x1c
push edi
mov ecx, ebx
mov edx, 0x49
call fcn.100490f0
mov eax, dword [edi + 0x1c]
add esp, 4
add eax, 3
push edi
mov ecx, ebx
mov edx, 0x21
call fcn.100490f0
add esp, 4
jmp 0x10072cb0
push 0
push ebx
push 0
push 0x60
mov eax, edi
call fcn.10048ff0
add esp, 0x10
mov edx, dword [esp + 0x1c]
push ebx
push 0
push edx
push 0x3f
mov eax, edi
call fcn.10048ff0
mov eax, dword [esp + 0x44]
push 0
push eax
push 0
push 0xe
mov eax, edi
call fcn.10048ff0
mov eax, dword [edi + 0x1c]
add esp, 0x20
sub eax, 2
mov edx, edi
call fcn.10049540
jmp 0x10072d79
xor esi, esi
cmp dword [ebp + 0x14], esi
jle 0x10072d31
mov ebx, dword [esp + 0x30]
inc ebx
mov eax, dword [esp + 0x40]
test eax, eax
je 0x10072d01
mov eax, dword [eax + esi*4]
jmp 0x10072d04
mov eax, dword [ebp + 0x24]
mov ecx, dword [esp + 0x2c]
push eax
push 0
push ecx
mov eax, edi
call fcn.1005a790
mov eax, dword [esp + 0x40]
add esp, 0xc
push edi
mov ecx, ebx
mov edx, 0x49
call fcn.100490f0
inc esi
add esp, 4
inc ebx
cmp esi, dword [ebp + 0x14]
jl 0x10072cf4
mov ebx, dword [esp + 0x30]
mov edx, dword [ebp + 0x14]
push ebx
push edx
lea eax, [ebx + 1]
push eax
push 0x2b
mov eax, edi
call fcn.10048ff0
mov esi, dword [esp + 0x38]
mov eax, edi
call fcn.1006bc10
push eax
push edi
xor ecx, ecx
or eax, 0xffffffff
call fcn.100496a0
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x34]
push 0
push 0x3d
push edi
mov eax, ebx
call fcn.10049210
mov esi, dword [esp + 0x60]
add esp, 0x24
push 0
lea eax, [esi + 1]
push eax
push 0
push 0x60
mov eax, edi
call fcn.10048ff0
mov eax, dword [ebp + 8]
push 0
push eax
push 0x5e
xor eax, eax
lea ecx, [esi + 2]
xor edx, edx
call fcn.10049110
mov ebx, dword [esp + 0x38]
add esp, 0x1c
lea ecx, [ebx - 1]
push edi
lea eax, [esi + 3]
mov edx, 0x15
call fcn.100490f0
add esp, 4
push 0
push 4
push esi
push 0x1e
mov eax, edi
call fcn.10048ff0
mov ecx, dword [esp + 0x44]
push ecx
mov edx, edi
call fcn.100492e0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x28]
add esp, 0x14
call fcn.1002e950
mov ebp, dword [ebp + 4]
inc ebx
mov dword [esp + 0x1c], ebx
xor ebx, ebx
test ebp, ebp
jne 0x10072bf1
mov esi, dword [esp + 0x48]
push ebx
lea edx, [esi + 1]
push edx
push ebx
push 7
mov eax, edi
call fcn.10048ff0
add esp, 0x10
mov eax, esi
mov edx, edi
call fcn.10049540
mov eax, dword [esp + 0x44]
cmp eax, ebx
jne 0x10072a40
jmp 0x10073912
push str.case_sensitive_like
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072e59
cmp esi, ebx
je 0x10073912
mov ebx, dword [esp + 0x24]
call fcn.10070270
mov esi, dword [esp + 0x14]
movzx ebx, al
call fcn.10069480
jmp 0x10073912
push str.integrity_check
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x1007331f
push str.quick_check
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x1007331f
push str.encoding
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10072f97
cmp esi, ebx
jne 0x10072f12
mov esi, dword [esp + 0x64]
mov edi, esi
call fcn.10074190
test eax, eax
jne 0x10073912
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.encoding
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
push ebx
push 1
push ebx
push 0x5e
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esi]
mov ecx, dword [eax + 0x10]
mov edx, dword [ecx + 0xc]
movzx eax, byte [edx + 0x4d]
mov ecx, dword [eax*8 + 0x100cef48]
push ecx
push ebp
mov ecx, 0xfffffffe
or eax, 0xffffffff
call fcn.100496a0
push ebx
push 1
push 1
push 0x1e
mov eax, ebp
call fcn.10048ff0
add esp, 0x38
jmp 0x10073912
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x10]
mov ecx, dword [eax + 0xc]
movzx eax, word [ecx + 0x4e]
test al, 1
je 0x10072f2c
test al, 4
je 0x10073912
mov eax, dword [str.UTF8]
mov edi, 0x100cef48
cmp eax, ebx
je 0x10072f80
lea ebx, [ebx]
push eax
push esi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x10072f5a
mov eax, dword [edi + 8]
add edi, 8
cmp eax, ebx
jne 0x10072f40
jmp 0x10072f80
mov al, byte [edi + 4]
cmp al, bl
movzx eax, al
jne 0x10072f69
mov eax, 2
mov edx, dword [esp + 0x64]
mov ecx, dword [edx]
mov edx, dword [ecx + 0x10]
mov ecx, dword [edx + 0xc]
mov byte [ecx + 0x4d], al
cmp dword [edi], ebx
jne 0x10073912
mov edi, dword [esp + 0x64]
push esi
push str.unsupported_encoding:__s
call fcn.10030990
add esp, 8
jmp 0x10073912
push str.schema_version
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x10073232
push str.user_version
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x10073232
push str.freelist_count
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x10073232
push str.application_id
push edi
call fcn.10030a80
add esp, 8
test eax, eax
je 0x10073232
push str.compile_options
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10073070
push 1
mov edi, ebp
xor esi, esi
call fcn.1004a6e0
mov edx, dword [esp + 0x68]
add esp, 4
push ebx
push str.compile_option
push ebx
push ebx
mov ecx, ebp
mov dword [edx + 0x4c], 1
call fcn.1004a760
push ebx
call fcn.1002ba30
add esp, 0x14
cmp eax, ebx
je 0x10073912
push ebx
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 1]
xor edx, edx
mov edi, ebp
inc esi
call fcn.10049110
add esp, 0xc
push ebx
push 1
push 1
push 0x1e
mov eax, ebp
call fcn.10048ff0
push esi
call fcn.1002ba30
add esp, 0x14
cmp eax, ebx
jne 0x1007303a
jmp 0x10073912
push str.wal_checkpoint
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x1007315e
mov eax, dword [esp + 0x6c]
cmp dword [eax], ebx
je 0x10073098
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x44], ecx
jmp 0x100730a0
mov dword [esp + 0x44], 0xa
mov dword [esp + 0x40], ebx
cmp esi, ebx
je 0x100730de
push str.full
push esi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100730c4
mov dword [esp + 0x40], 1
jmp 0x100730de
push str.restart
push esi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100730de
mov dword [esp + 0x40], 2
mov esi, dword [esp + 0x64]
mov edi, esi
call fcn.10074190
test eax, eax
jne 0x10073912
push 3
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.busy
push ebx
push ebx
mov ecx, ebp
mov dword [esi + 0x4c], 3
call fcn.1004a760
push ebx
push 0x100d7ba8
push ebx
push 1
mov ecx, ebp
call fcn.1004a760
push ebx
push str.checkpointed
push ebx
push 2
mov ecx, ebp
call fcn.1004a760
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
push 1
push edx
push eax
push 9
mov eax, ebp
call fcn.10048ff0
add esp, 0x40
push ebx
push 3
push 1
push 0x1e
mov eax, ebp
call fcn.10048ff0
jmp 0x1007390f
push str.wal_autocheckpoint
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100731bc
cmp esi, ebx
je 0x1007318b
mov ecx, esi
call fcn.10031340
mov esi, dword [esp + 0x14]
push eax
push esi
call fcn.1008ef50
add esp, 8
jmp 0x1007318f
mov esi, dword [esp + 0x14]
cmp dword [esi + 0xcc], 0x1008ef10
jne 0x100731a1
mov ebx, dword [esi + 0xd0]
mov eax, ebx
cdq
push edx
push eax
mov eax, dword [esp + 0x6c]
push str.wal_autocheckpoint
call fcn.10070410
add esp, 0xc
jmp 0x10073912
push str.shrink_memory
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x100731e0
mov ecx, dword [esp + 0x14]
push ecx
call fcn.1008deb0
add esp, 4
jmp 0x10073912
push str.busy_timeout
push edi
call fcn.10030a80
add esp, 8
test eax, eax
jne 0x10073912
cmp esi, ebx
je 0x1007320f
mov ecx, esi
call fcn.10031340
mov edx, dword [esp + 0x14]
push eax
push edx
call fcn.1008e900
add esp, 8
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x1ec]
cdq
push edx
push eax
mov eax, dword [esp + 0x6c]
push str.timeout
call fcn.10070410
add esp, 0xc
jmp 0x10073912
mov ecx, dword [esp + 0x18]
mov edx, 1
shl edx, cl
or dword [ebp + 0x6c], edx
cmp ecx, 1
je 0x1007324c
mov eax, ebp
call fcn.10049af0
movsx eax, byte [edi]
add eax, 0xffffffbf
cmp eax, 0x32
ja case.0x1007325e.66
movzx eax, byte [eax + 0x10073944]
jmp dword [eax*4 + 0x10073934]
mov edi, 8
jmp 0x1007327c
xor edi, edi
jmp 0x1007327c
mov edi, 1
jmp 0x1007327c
mov edi, 6
cmp esi, ebx
je 0x100732d7
cmp edi, ebx
je 0x100732d7
push 0x100cef3c
push 3
mov eax, ebp
call fcn.10049430
mov edx, dword [esp + 0x20]
add esp, 8
mov ecx, ebp
mov ebx, eax
call fcn.100494f0
mov ecx, esi
call fcn.10031340
lea ecx, [ebx + 1]
mov edx, eax
mov eax, ecx
mov ecx, ebp
call fcn.100494f0
mov edx, dword [esp + 0x18]
lea esi, [ebx + 2]
mov eax, esi
mov ecx, ebp
call fcn.100494f0
mov edx, edi
mov eax, esi
mov ecx, ebp
call fcn.10049500
jmp 0x10073912
push 0x100cef90
push 3
mov eax, ebp
call fcn.10049430
mov edx, dword [esp + 0x20]
mov ecx, ebp
mov esi, eax
call fcn.100494f0
inc esi
mov eax, esi
mov ecx, ebp
call fcn.100494f0
mov edx, edi
mov eax, esi
mov ecx, ebp
call fcn.10049510
push 1
mov edi, ebp
call fcn.1004a6e0
mov edx, dword [esp + 0x44]
add esp, 0xc
push 0xffffffffffffffff
push edx
jmp 0x10073906
movzx eax, byte [edi]
mov edx, dword [esp + 0x6c]
xor ecx, ecx
cmp byte [eax + 0x100ce228], 0x71
sete cl
mov dword [esp + 0x3c], ecx
cmp dword [edx], ebx
jne 0x10073342
mov dword [esp + 0x18], 0xffffffff
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov dword [edi + 0x4c], 6
push 1
mov edi, ebp
call fcn.1004a6e0
add esp, 4
push ebx
push str.integrity_check
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
add esp, 0x10
mov edi, 0x64
mov dword [esp + 0x2c], edi
cmp esi, ebx
je 0x100733a4
lea eax, [esp + 0x2c]
push eax
push esi
call fcn.10031270
mov edi, dword [esp + 0x34]
add esp, 8
cmp edi, ebx
jg 0x100733a4
mov edi, 0x64
mov dword [esp + 0x2c], edi
push ebx
push 1
push edi
push 0x15
mov eax, ebp
call fcn.10048ff0
mov ecx, dword [esp + 0x24]
xor eax, eax
add esp, 0x10
cmp dword [ecx + 0x14], ebx
mov dword [esp + 0x40], eax
jle 0x100737df
mov dword [esp + 0x30], ebx
mov ecx, dword [esp + 0x18]
xor esi, esi
cmp ecx, ebx
jl 0x100733dd
cmp eax, ecx
jne 0x100737c4
push eax
mov eax, dword [esp + 0x68]
call fcn.10064d20
add esp, 4
push 1
push 0x7e
mov eax, ebp
call fcn.100490a0
push ebx
push ebx
mov edi, eax
push ebx
push 0x14
mov eax, ebp
call fcn.10048ff0
add esp, 0x18
mov eax, edi
mov edx, ebp
call fcn.10049540
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x10]
mov ecx, dword [esp + 0x30]
mov eax, dword [ecx + eax + 0xc]
add eax, 8
mov dword [esp + 0x44], eax
mov eax, dword [eax + 8]
mov dword [esp + 0x20], eax
cmp eax, ebx
je 0x1007347d
mov edx, dword [esp + 0x20]
mov edi, dword [edx + 8]
mov ecx, dword [edi + 0x20]
lea eax, [esi + 2]
push ebp
mov edx, 0x15
call fcn.100490f0
mov edi, dword [edi + 8]
add esp, 4
inc esi
cmp edi, ebx
je 0x1007346f
mov ecx, dword [edi + 0x28]
lea eax, [esi + 2]
push ebp
mov edx, 0x15
call fcn.100490f0
mov edi, dword [edi + 0x14]
add esp, 4
inc esi
cmp edi, ebx
jne 0x10073453
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
cmp eax, ebx
jne 0x10073430
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + 0x4c]
lea ecx, [esi + 7]
cmp eax, ecx
jg 0x1007348d
mov eax, ecx
mov edx, dword [esp + 0x64]
push 1
push esi
mov dword [edx + 0x4c], eax
push 2
push 0x75
mov eax, ebp
call fcn.10048ff0
mov dl, byte [esp + 0x50]
mov eax, ebp
call fcn.10049520
push 2
push 0x49
mov eax, ebp
call fcn.100490a0
mov esi, dword [esp + 0x2c]
add esp, 0x18
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x50], eax
mov eax, dword [esi + 0x10]
mov edx, dword [ecx + eax]
push edx
push str._in_database__s__n
call fcn.1002fe70
add esp, 0xc
push eax
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
mov edi, ebp
call fcn.10049110
add esp, 0xc
push ebx
push 4
push 2
push 0x1b
mov eax, ebp
call fcn.10048ff0
push 2
push 3
push 4
push 0x5b
mov eax, ebp
call fcn.10048ff0
push ebx
push 1
push 2
push 0x1e
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esp + 0x78]
add esp, 0x30
mov edx, ebp
call fcn.10049540
mov eax, dword [esp + 0x44]
mov eax, dword [eax + 8]
mov dword [esp + 0x20], eax
cmp eax, ebx
je 0x100737c0
cmp dword [esp + 0x3c], ebx
jne 0x100737c0
mov ecx, dword [esp + 0x20]
mov edi, dword [ecx + 8]
mov dword [esp + 0x44], edi
cmp dword [edi + 8], ebx
je 0x100737ae
push 1
push 0x7e
mov eax, ebp
call fcn.100490a0
push ebx
push ebx
mov esi, eax
push ebx
push 0x14
mov eax, ebp
call fcn.10048ff0
mov eax, esi
mov edx, ebp
call fcn.10049540
mov edx, dword [esp + 0x7c]
call fcn.1005a8e0
push 0x30
push 1
push edx
mov eax, edi
call fcn.1006ec30
mov edi, dword [edi + 8]
add esp, 0x24
xor esi, esi
cmp edi, ebx
je 0x100735ba
nop
push ebx
lea edx, [esi + 7]
push edx
push ebx
push 0x15
mov eax, ebp
call fcn.10048ff0
mov edi, dword [edi + 0x14]
add esp, 0x10
inc esi
cmp edi, ebx
jne 0x100735a0
mov ecx, dword [esp + 0x64]
mov eax, dword [ecx + 0x4c]
add esi, 7
cmp eax, esi
jg 0x100735ca
mov eax, esi
push ebx
push ebx
mov dword [ecx + 0x4c], eax
push 1
push 0x65
mov eax, ebp
call fcn.10048ff0
mov esi, eax
mov eax, dword [esp + 0x54]
mov edi, dword [eax + 8]
inc esi
add esp, 0x10
mov dword [esp + 0x1c], esi
cmp edi, ebx
je 0x100736c3
mov dword [esp + 0x34], 2
jmp 0x10073600
mov edx, dword [esp + 0x64]
lea ecx, [esp + 0x28]
push ecx
push ebx
push 3
push 1
push edi
push edx
call fcn.10066920
mov esi, eax
mov eax, dword [esp + 0x4c]
push ebx
add eax, 5
push 1
push eax
push 0x20
mov eax, ebp
call fcn.10048ff0
movzx ecx, word [edi + 0x2c]
mov edx, dword [esp + 0x5c]
inc ecx
push ecx
push 0x3d
push ebp
mov eax, esi
xor ecx, ecx
call fcn.10049210
add esp, 0x34
mov dword [esp + 0x48], eax
push 0x100cef10
push 0xb
mov eax, ebp
call fcn.10049430
mov esi, eax
push str.rowid
lea eax, [esi + 1]
push ebp
mov ecx, 0xfffffffe
call fcn.100496a0
push str._missing_from_index
lea eax, [esi + 3]
push ebp
mov ecx, 0xfffffffe
call fcn.100496a0
mov edx, dword [edi]
push edx
lea eax, [esi + 4]
push ebp
xor ecx, ecx
call fcn.100496a0
lea eax, [esi + 9]
mov edx, ebp
call fcn.10049540
mov eax, dword [esp + 0x68]
mov edx, ebp
call fcn.10049540
mov eax, dword [esp + 0x48]
push eax
mov edx, ebp
call fcn.100492e0
mov edi, dword [edi + 0x14]
inc dword [esp + 0x58]
add esp, 0x24
cmp edi, ebx
jne 0x10073600
mov esi, dword [esp + 0x1c]
push ebx
push esi
push 1
push 7
mov eax, ebp
call fcn.10048ff0
lea eax, [esi - 1]
mov edx, ebp
call fcn.10049540
push 0xfffffffffffffffe
xor eax, eax
push str.wrong__of_entries_in_index
push 0x5e
lea ecx, [eax + 2]
xor edx, edx
mov edi, ebp
call fcn.10049110
mov ecx, dword [esp + 0x60]
mov esi, dword [ecx + 8]
add esp, 0x1c
cmp esi, ebx
je 0x100737ae
mov dword [esp + 0x34], 7
jmp 0x10073710
mov edi, dword [ebp + 0x1c]
push ebx
lea edx, [edi + 2]
push edx
push 1
push 0x7e
mov eax, ebp
call fcn.10048ff0
push ebx
push ebx
push ebx
push 0x14
mov eax, ebp
call fcn.10048ff0
mov eax, dword [esp + 0x54]
push ebx
add eax, 0xfffffffb
push 3
push eax
push 0x2c
mov eax, ebp
call fcn.10048ff0
mov ecx, dword [esp + 0x64]
push 3
add edi, 8
push edi
push ecx
push 0x4c
mov eax, ebp
call fcn.10048ff0
add esp, 0x40
push ebx
push 0xffffffffffffffff
push 1
push 0x20
mov eax, ebp
call fcn.10048ff0
mov edx, dword [esi]
push ebx
push edx
xor eax, eax
push 0x5e
lea ecx, [eax + 3]
xor edx, edx
mov edi, ebp
call fcn.10049110
add esp, 0x1c
push 7
push 2
push 3
push 0x5b
mov eax, ebp
call fcn.10048ff0
push ebx
push 1
push 7
push 0x1e
mov eax, ebp
call fcn.10048ff0
mov esi, dword [esi + 0x14]
inc dword [esp + 0x54]
add esp, 0x20
cmp esi, ebx
jne 0x10073710
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
cmp eax, ebx
jne 0x1007353e
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x14]
add dword [esp + 0x30], 0x10
inc eax
cmp eax, dword [ecx + 0x14]
mov dword [esp + 0x40], eax
jl 0x100733cb
mov edi, dword [esp + 0x2c]
push 0x100cef00
push 4
mov eax, ebp
call fcn.10049430
mov edx, edi
neg edx
mov ecx, ebp
mov esi, eax
call fcn.10049500
lea eax, [esi + 1]
mov edx, ebp
call fcn.10049540
push 0x100db53c
lea eax, [esi + 2]
push ebp
mov ecx, 0xfffffffe
call fcn.100496a0
jmp 0x1007390f
mov edi, dword [esp + 0x64]
call fcn.10074190
test eax, eax
jne 0x10073912
mov edx, dword [esp + 0x18]
push edx
mov eax, edi
call fcn.10064d20
inc dword [edi + 0x4c]
mov eax, dword [esp + 0x3c]
movzx ecx, byte [eax]
mov edi, dword [edi + 0x4c]
add esp, 4
cmp byte [ecx + 0x100ce228], 0x70
mov dword [esp + 0x64], edi
jne 0x10073894
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x1007386d
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100738b6
mov edi, dword [esp + 0x64]
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov ecx, dword [esp + 0x18]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x92
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], edi
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
jmp 0x100738b6
mov ecx, esi
call fcn.10031340
call fcn.100319e0
mov edx, dword [esp + 0x18]
push eax
push edi
push edx
push 0x93
mov eax, ebp
call fcn.10048ff0
add esp, 0x10
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100738c9
mov edi, ebp
call fcn.10048f70
test eax, eax
jne 0x100738f3
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x64]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x1e
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
push 1
mov edi, ebp
call fcn.1004a6e0
mov eax, dword [esp + 0x3c]
add esp, 4
push 0xffffffffffffffff
push eax
push ebx
push ebx
mov ecx, ebp
call fcn.1004a760
add esp, 0x10
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x38]
mov ecx, esi
call fcn.1002e950
mov eax, dword [esp + 0x24]
mov ecx, esi
call fcn.1002e950
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret