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

Disassembly:
sub esp, 0x60
push ebx
push ebp
push esi
mov esi, dword [esp + 0x70]
mov ebp, dword [esi + 8]
push edi
mov edi, dword [esi]
xor ebx, ebx
mov dword [esp + 0x18], edi
cmp ebp, ebx
jne 0x100fa91b
mov eax, edi
call fcn.100cf3d0
mov ebp, eax
mov dword [esi + 8], eax
cmp ebp, ebx
je 0x100fdb9c
push 0x96
call fcn.100cf5b0
add esp, 4
or dword [ebp + 0x64], 0x40
mov eax, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
push esi
lea ecx, [esp + 0x4c]
mov dword [esi + 0x4c], 2
call fcn.100e8c20
add esp, 4
cmp eax, ebx
mov dword [esp + 0x14], eax
jl 0x100fdb9c
mov edx, dword [edi + 0x10]
mov ecx, eax
shl ecx, 4
add edx, ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x20], edx
cmp eax, 1
jne 0x100fa96d
mov eax, esi
call fcn.100ed610
test eax, eax
jne 0x100fdb9c
mov eax, dword [esp + 0x48]
push edi
call fcn.100e8ae0
add esp, 4
mov dword [esp + 0x24], eax
cmp eax, ebx
je 0x100fdb9c
mov eax, dword [esp + 0x80]
cmp dword [esp + 0x84], ebx
je 0x100fa9ae
push eax
push 0x1017ad28
mov esi, edi
call fcn.100b5f00
mov esi, eax
add esp, 8
mov dword [esp + 0x28], esi
jmp 0x100fa9bd
push edi
call fcn.100e8ae0
add esp, 4
mov esi, eax
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x7c]
cmp dword [ecx + 4], ebx
jbe 0x100fa9d2
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
mov dword [esp + 0x1c], eax
jmp 0x100fa9d6
mov dword [esp + 0x1c], ebx
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x74]
push ecx
push esi
push edx
push 0x13
call fcn.100e75a0
add esp, 0x10
test eax, eax
jne 0x100fdb82
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x60]
push ecx
push 0xe
push edx
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], ebx
push edi
mov dword [edi + 0x1bc], ebx
call fcn.1011cc80
add esp, 0x10
mov dword [esp + 0x48], eax
cmp eax, ebx
jne 0x100faaca
mov edx, dword [esp + 0x60]
cmp edx, ebx
je 0x100fdb82
mov eax, dword [esp + 0x74]
inc dword [eax + 0x4c]
mov ecx, dword [eax + 0x4c]
push ebx
push edx
push 0x5f
xor eax, eax
xor edx, edx
mov edi, ebp
mov dword [esp + 0x80], ecx
call fcn.100cf670
add esp, 0xc
push 1
call fcn.100d0da0
add esp, 4
push ebx
push str.result
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100faa8e
call fcn.100cf4d0
test eax, eax
jne 0x100faab8
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x74]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x20
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 + 0x60]
push eax
call fcn.100b4950
add esp, 4
jmp 0x100fdb82
cmp eax, 0xc
je 0x100fab06
mov ecx, dword [esp + 0x60]
cmp ecx, ebx
je 0x100faaf7
mov edi, dword [esp + 0x74]
push ecx
push 0x1014d8cc
call fcn.100b69f0
mov ecx, dword [esp + 0x68]
push ecx
call fcn.100b4950
mov eax, dword [esp + 0x54]
add esp, 0xc
mov ecx, dword [esp + 0x74]
inc dword [ecx + 0x44]
mov dword [ecx + 0xc], eax
jmp 0x100fdb82
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], 0x36
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
add eax, edx
cdq
sub eax, edx
sar eax, 1
lea ecx, [eax + eax*2]
mov edx, dword [ecx*4 + 0x1014e908]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x24]
push edx
push eax
call fcn.100b6ae0
add esp, 8
cmp eax, ebx
je 0x100fab66
jge 0x100fab4e
mov ecx, dword [esp + 0x30]
dec ecx
mov dword [esp + 0x38], ecx
jmp 0x100fab57
mov edx, dword [esp + 0x30]
inc edx
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0x38]
cmp dword [esp + 0x34], eax
jle 0x100fab12
jmp 0x100fdb82
mov ecx, dword [esp + 0x38]
cmp dword [esp + 0x34], ecx
jg 0x100fdb82
mov eax, dword [esp + 0x30]
lea eax, [eax + eax*2]
add eax, eax
add eax, eax
test byte [eax + 0x1014e90d], 1
mov dword [esp + 0x38], eax
je 0x100faba1
mov edi, dword [esp + 0x74]
call fcn.100fe490
test eax, eax
jne 0x100fdb82
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
movzx ecx, byte [ecx + 0x1014e90c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
cmp ecx, 0x22
ja case.0x100fabbd.3
jmp dword [ecx*4 + 0x100fdba4]
mov eax, 1
mov ecx, edx
shl eax, cl
or dword [ebp + 0x6c], eax
cmp edx, 1
je 0x100fabe0
mov ecx, dword [esp + 0x14]
mov eax, ebp
call fcn.100d01a0
cmp esi, ebx
jne 0x100fac63
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.cache_size
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
mov eax, dword [esp + 0x84]
add dword [eax + 0x4c], 2
push 0x1014e5e4
push 9
mov eax, ebp
call fcn.100cfa20
add esp, 0x18
cmp dword [ebp + 0x1c], eax
jbe 0x100fac2e
mov edx, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea ecx, [eax + eax*4]
mov dword [edx + ecx*4 + 4], esi
lea ecx, [eax + 1]
cmp dword [ebp + 0x1c], ecx
jbe 0x100fac44
mov edx, dword [ebp + 4]
mov esi, dword [esp + 0x14]
lea ecx, [ecx + ecx*4]
mov dword [edx + ecx*4 + 4], esi
add eax, 6
cmp dword [ebp + 0x1c], eax
jbe 0x100fdb82
mov ecx, dword [ebp + 4]
lea eax, [eax + eax*4]
mov dword [ecx + eax*4 + 4], 0x7d0
jmp 0x100fdb82
mov ecx, esi
call fcn.100b73c0
call fcn.100b7a60
mov edi, dword [esp + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x74]
push ebx
call fcn.100ed7f0
mov esi, dword [ebp + 0x1c]
add esp, 4
cmp dword [ebp + 0x20], esi
jg 0x100fac97
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100facc1
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], 0x17
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]
push 1
push 3
push eax
push 0x30
mov eax, ebp
call fcn.100cf550
mov eax, dword [esp + 0x30]
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.100c5b20
add esp, 0x14
jmp 0x100fdb82
mov edi, dword [eax + 4]
cmp esi, ebx
jne 0x100fad18
cmp edi, ebx
je 0x100fad09
mov eax, dword [edi + 4]
mov ebx, dword [eax + 0x20]
mov eax, ebx
cdq
push edx
push eax
push str.page_size
jmp 0x100fdb73
mov ecx, dword [esp + 0x28]
call fcn.100b73c0
mov ecx, dword [esp + 0x18]
push ebx
push 0xffffffffffffffff
mov ebx, edi
mov dword [ecx + 0x48], eax
call fcn.100c5c60
add esp, 8
cmp eax, 7
jne 0x100fdb82
mov edx, dword [esp + 0x18]
mov byte [edx + 0x40], 1
jmp 0x100fdb82
mov eax, dword [eax + 4]
or ebp, 0xffffffff
mov dword [esp + 0x48], eax
cmp esi, ebx
je 0x100fad6d
mov ebx, dword [esp + 0x28]
xor eax, eax
call fcn.100fa4a0
mov edi, dword [esp + 0x18]
movzx ebp, al
xor ebx, ebx
mov ecx, dword [esp + 0x7c]
cmp dword [ecx + 4], ebx
jne 0x100fad98
cmp ebp, ebx
jl 0x100fad98
xor esi, esi
cmp dword [edi + 0x14], ebx
jle 0x100fad98
mov edx, dword [edi + 0x10]
mov ecx, dword [edx + ebx + 4]
mov eax, ebp
call fcn.100c5dd0
inc esi
add ebx, 0x10
cmp esi, dword [edi + 0x14]
jl 0x100fad81
mov ecx, dword [esp + 0x48]
mov eax, ebp
call fcn.100c5dd0
cdq
push edx
push eax
push str.secure_delete
jmp 0x100fdb73
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x74]
push eax
mov eax, edi
call fcn.100ed6a0
inc dword [edi + 0x4c]
mov ecx, dword [esp + 0x28]
movzx edx, byte [ecx]
mov edi, dword [edi + 0x4c]
add esp, 4
cmp byte [edx + 0x1014dc58], 0x70
mov dword [esp + 0x74], edi
jne 0x100fae1b
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fadf0
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fae3d
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x14]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov ecx, dword [esp + 0x74]
mov byte [eax], 0x94
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
jmp 0x100fae3d
mov ecx, esi
call fcn.100b73c0
call fcn.100b7a60
mov edx, dword [esp + 0x14]
push eax
push edi
push edx
push 0x95
mov eax, ebp
call fcn.100cf550
add esp, 0x10
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fae50
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fae7a
mov edx, dword [ebp + 4]
lea eax, [esi + esi*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x74]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x20
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.100d0da0
mov eax, dword [esp + 0x28]
add esp, 4
push 0xffffffffffffffff
push eax
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
add esp, 0x10
jmp 0x100fdb82
mov dword [esp + 0x38], str.normal
call fcn.100fa4c0
mov ecx, dword [esp + 0x7c]
mov edx, eax
mov eax, dword [ecx + 4]
cmp eax, ebx
jne 0x100faefc
cmp edx, 0xffffffff
jne 0x100faec3
movzx eax, byte [edi + 0x41]
jmp 0x100faf0d
cmp eax, ebx
jne 0x100faefc
mov esi, 2
cmp dword [edi + 0x14], esi
jle 0x100faef9
mov dword [esp + 0x74], 0x20
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x74]
mov eax, dword [eax + ecx + 4]
mov ecx, dword [eax + 4]
mov eax, dword [ecx]
call fcn.100c1280
add dword [esp + 0x74], 0x10
inc esi
cmp esi, dword [edi + 0x14]
jl 0x100faed9
mov byte [edi + 0x41], dl
mov eax, dword [esp + 0x20]
mov ecx, dword [eax + 4]
mov eax, dword [ecx + 4]
mov eax, dword [eax]
call fcn.100c1280
cmp eax, 1
jne 0x100faf1a
mov dword [esp + 0x38], str.exclusive
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.locking_mode
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100faf50
call fcn.100cf4d0
test eax, eax
je 0x100faf50
mov esi, 1
jmp 0x100faf76
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], 0x5f
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 0x100fafd1
cmp byte [edi + 0x40], bl
jne 0x100fafd1
cmp esi, ebx
jge 0x100faf8f
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.100cfb40
mov ecx, dword [esp + 0x38]
mov dword [esi + 0x10], ebx
cmp ecx, ebx
jne 0x100fafb5
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fafdc
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fafdc
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100faff3
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fdb82
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], 0x20
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 0x100fdb82
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.journal_mode
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
add esp, 0x10
cmp esi, ebx
jne 0x100fb04a
mov dword [esp + 0x74], 0xffffffff
jmp 0x100fb086
mov ecx, esi
call fcn.100b6960
mov dword [esp + 0x48], eax
xor edi, edi
cmp edi, 6
je 0x100fb040
mov eax, dword [edi*4 + 0x1014ebcc]
cmp eax, ebx
je 0x100fb040
mov ecx, dword [esp + 0x48]
push ecx
push eax
push esi
call fcn.100b6b30
add esp, 0xc
test eax, eax
je 0x100fb07d
inc edi
jmp 0x100fb057
mov dword [esp + 0x74], edi
cmp edi, 0xffffffff
jne 0x100fb09a
mov eax, dword [esp + 0x7c]
cmp dword [eax + 4], ebx
jne 0x100fb09a
mov dword [esp + 0x14], ebx
mov dword [eax + 4], 1
mov edx, dword [esp + 0x18]
mov esi, dword [edx + 0x14]
dec esi
mov edi, 1
mov ecx, esi
rol edi, cl
cmp esi, ebx
jl 0x100fafdc
mov eax, esi
shl eax, 4
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x10]
cmp dword [edx + eax + 4], ebx
je 0x100fb101
cmp esi, dword [esp + 0x14]
je 0x100fb0d8
mov ecx, dword [esp + 0x7c]
cmp dword [ecx + 4], ebx
jne 0x100fb101
or dword [ebp + 0x6c], edi
cmp esi, 1
je 0x100fb0e9
mov ecx, esi
mov eax, ebp
call fcn.100d01a0
mov edx, dword [esp + 0x74]
push edx
push 1
push esi
push 0xc
mov eax, ebp
call fcn.100cf550
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 0x100fb0bc
jmp 0x100fafdc
mov eax, dword [eax + 4]
mov ecx, dword [eax + 4]
mov edi, dword [ecx]
or eax, 0xffffffff
mov ecx, 0xfffffffe
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], eax
cmp esi, ebx
je 0x100fb166
mov ecx, esi
call fcn.100b6960
push eax
lea edx, [esp + 0x5c]
push edx
mov al, 1
call fcn.100b70f0
mov eax, dword [esp + 0x64]
add esp, 8
cmp eax, 0xffffffff
jg 0x100fb162
jl 0x100fb15b
mov ecx, dword [esp + 0x58]
cmp ecx, 0xffffffff
jae 0x100fb166
or ecx, 0xffffffff
or eax, ecx
jmp 0x100fb166
mov ecx, dword [esp + 0x58]
push eax
push ecx
mov ecx, edi
call fcn.100c13c0
push edx
push eax
mov eax, dword [esp + 0x84]
push str.journal_size_limit
call fcn.100fa640
add esp, 0x14
jmp 0x100fdb82
mov eax, dword [eax + 4]
mov dword [esp + 0x40], eax
cmp esi, ebx
jne 0x100fb1a7
call fcn.100c5eb0
cdq
push edx
push eax
push str.auto_vacuum
jmp 0x100fdb73
call fcn.100fa500
mov ebx, eax
mov eax, dword [esp + 0x40]
push ebx
mov byte [edi + 0x42], bl
call fcn.100c5e40
add esp, 4
test eax, eax
jne 0x100fdb82
cmp ebx, 1
je 0x100fb1d4
cmp ebx, 2
jne 0x100fdb82
push 0x1014ebe4
push 6
mov eax, ebp
call fcn.100cfa20
mov ecx, dword [esp + 0x1c]
add esp, 8
cmp dword [ebp + 0x1c], eax
jbe 0x100fb1f8
mov esi, dword [ebp + 4]
lea edx, [eax + eax*4]
mov dword [esi + edx*4 + 4], ecx
lea edx, [eax + 1]
cmp dword [ebp + 0x1c], edx
jbe 0x100fb20a
mov esi, dword [ebp + 4]
lea edx, [edx + edx*4]
mov dword [esi + edx*4 + 4], ecx
lea edx, [eax + 2]
cmp dword [ebp + 0x1c], edx
jbe 0x100fb21f
mov edi, dword [ebp + 4]
lea esi, [eax + 4]
lea edx, [edx + edx*4]
mov dword [edi + edx*4 + 8], esi
lea edx, [eax + 4]
cmp dword [ebp + 0x1c], edx
jbe 0x100fb232
mov esi, dword [ebp + 4]
dec ebx
lea edx, [edx + edx*4]
mov dword [esi + edx*4 + 4], ebx
add eax, 5
cmp dword [ebp + 0x1c], eax
jbe 0x100fb244
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 0x100fdb82
mov eax, ebp
call fcn.100d01a0
jmp 0x100fdb82
cmp esi, ebx
je 0x100fb27f
lea ecx, [esp + 0x38]
push ecx
push esi
call fcn.100b72f0
add esp, 8
test eax, eax
je 0x100fb27f
cmp dword [esp + 0x38], ebx
jg 0x100fb287
mov dword [esp + 0x38], getsockname
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
push ebx
call fcn.100ed7f0
mov esi, dword [ebp + 0x1c]
add esp, 4
cmp dword [ebp + 0x20], esi
jg 0x100fb2ab
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fb2d7
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x38]
mov edi, 1
add dword [ebp + 0x1c], edi
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
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 0x100fb2dc
mov edi, 1
mov edx, dword [esp + 0x14]
push edx
push 0x85
mov eax, ebp
call fcn.100cf600
mov dword [esp + 0x7c], eax
push edi
push 0x20
mov eax, ebp
call fcn.100cf600
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100fb316
mov edi, ebp
call fcn.100cf4d0
mov edi, 1
test eax, eax
jne 0x100fb33b
mov ecx, dword [ebp + 4]
add dword [ebp + 0x1c], edi
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x22
mov byte [eax + 3], bl
mov dword [eax + 4], edi
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 0x100fb353
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fb378
mov edi, 1
mov eax, dword [ebp + 4]
add dword [ebp + 0x1c], edi
mov ecx, dword [esp + 0x74]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x80
mov byte [eax + 3], bl
mov dword [eax + 4], edi
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x74]
mov edx, ebp
call fcn.100cfb20
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fb3a3
mov edx, dword [esp + 0x20]
mov eax, dword [edx + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push str.cache_size
jmp 0x100fdb73
mov ecx, esi
call fcn.100b73c0
mov ecx, dword [esp + 0x20]
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.100c5b20
add esp, 4
jmp 0x100fdb82
cmp esi, ebx
je 0x100fb464
mov ecx, esi
call fcn.100b6960
push eax
lea eax, [esp + 0x5c]
push eax
mov al, 1
call fcn.100b70f0
mov ecx, dword [esp + 0x64]
add esp, 8
cmp ecx, ebx
jg 0x100fb40e
jl 0x100fb3fa
cmp dword [esp + 0x58], ebx
jae 0x100fb40e
mov ecx, dword [0x1018e940]
mov dword [esp + 0x58], ecx
mov ecx, dword [0x1018e944]
mov dword [esp + 0x5c], ecx
mov edx, dword [esp + 0x7c]
cmp dword [edx + 4], ebx
jne 0x100fb421
mov eax, dword [esp + 0x58]
mov dword [edi + 0x28], eax
mov dword [edi + 0x2c], ecx
mov esi, dword [edi + 0x14]
sub esi, 1
js 0x100fb464
mov ebp, esi
shl ebp, 4
mov edi, edi
mov edx, dword [edi + 0x10]
mov eax, dword [edx + ebp + 4]
cmp eax, ebx
je 0x100fb45c
cmp esi, dword [esp + 0x14]
je 0x100fb44a
mov edx, dword [esp + 0x7c]
cmp dword [edx + 4], ebx
jne 0x100fb45c
push ecx
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.100c5b70
mov ecx, dword [esp + 0x64]
add esp, 8
dec esi
sub ebp, 0x10
cmp esi, ebx
jge 0x100fb430
or eax, 0xffffffff
lea edx, [esp + 0x58]
push edx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x20]
push 0x12
push eax
push edi
call fcn.1011cc80
add esp, 0x10
cmp eax, ebx
jne 0x100fb49c
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
push ecx
push edx
push str.mmap_size
jmp 0x100fdb73
cmp eax, 0xc
je 0x100fdb82
mov ecx, dword [esp + 0x74]
inc dword [ecx + 0x44]
mov dword [ecx + 0xc], eax
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fb4c9
movzx eax, byte [edi + 0x3f]
cdq
push edx
push eax
push str.temp_store
jmp 0x100fdb73
mov edi, dword [esp + 0x74]
mov eax, esi
call fcn.100fa5d0
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fb5e2
cmp dword [0x101ba77c], ebx
je 0x100fdb82
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.temp_store_directory
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
mov eax, dword [0x101ba77c]
mov dword [esp + 0x84], eax
mov esi, dword [ebp + 0x1c]
add esp, 0x10
cmp dword [ebp + 0x20], esi
jg 0x100fb531
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fb531
mov eax, 1
jmp 0x100fb559
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], 0x5f
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 0x100fb5b2
cmp byte [edi + 0x40], bl
jne 0x100fb5b2
cmp eax, ebx
jge 0x100fb570
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.100cfb40
mov ecx, dword [esp + 0x74]
mov dword [esi + 0x10], ebx
cmp ecx, ebx
jne 0x100fb596
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fb5bd
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fb5bd
mov ecx, dword [esp + 0x74]
xor eax, eax
call fcn.100cfb40
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fb5d4
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fdb82
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
jmp 0x100faffc
cmp byte [esi], bl
je 0x100fb619
mov eax, dword [edi]
mov edx, dword [eax + 0x20]
lea ecx, [esp + 0x48]
push ecx
push 1
push esi
push eax
call edx
add esp, 0x10
test eax, eax
jne 0x100fb603
cmp dword [esp + 0x48], ebx
jne 0x100fb619
mov edi, dword [esp + 0x74]
push str.not_a_writable_directory
call fcn.100b69f0
add esp, 4
jmp 0x100fdb82
cmp byte [edi + 0x3f], 1
ja 0x100fb628
mov eax, dword [esp + 0x74]
call fcn.100fa580
mov eax, dword [0x101ba77c]
push eax
call fcn.100b4950
add esp, 4
cmp byte [esi], bl
je 0x100fb652
push esi
push 0x1014d8cc
call fcn.100b5fe0
add esp, 8
mov dword [0x101ba77c], eax
jmp 0x100fdb82
mov dword [0x101ba77c], ebx
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fb69a
cmp dword [0x101ba780], ebx
je 0x100fdb82
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.data_store_directory
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
mov ecx, dword [0x101ba780]
mov dword [esp + 0x84], ecx
jmp 0x100fb514
cmp byte [esi], bl
je 0x100fb6c3
mov edi, dword [edi]
mov edx, dword [edi + 0x20]
lea ecx, [esp + 0x48]
push ecx
push 1
push esi
push edi
call edx
add esp, 0x10
test eax, eax
jne 0x100fb603
cmp dword [esp + 0x48], ebx
je 0x100fb603
mov eax, dword [0x101ba780]
push eax
call fcn.100b4950
add esp, 4
cmp byte [esi], bl
je 0x100fb6ed
push esi
push 0x1014d8cc
call fcn.100b5fe0
add esp, 8
mov dword [0x101ba780], eax
jmp 0x100fdb82
mov dword [0x101ba780], ebx
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fb712
mov ecx, dword [esp + 0x20]
movzx eax, byte [ecx + 8]
dec eax
cdq
push edx
push eax
push str.synchronous
jmp 0x100fdb73
cmp byte [edi + 0x3e], bl
jne 0x100fb72d
mov edi, dword [esp + 0x74]
push str.Safety_level_may_not_be_changed_inside_a_transaction
call fcn.100b69f0
add esp, 4
jmp 0x100fdb82
push 1
push ebx
mov ebx, dword [esp + 0x30]
call fcn.100fa3f0
mov edx, dword [esp + 0x28]
inc al
mov byte [edx + 8], al
mov eax, dword [esp + 0x20]
push eax
call fcn.100fa810
jmp 0x100fdb7f
cmp esi, ebx
jne 0x100fb777
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 0x1014e910]
and eax, dword [edi + 0x18]
mov ecx, dword [ecx + 0x1014e908]
neg eax
sbb eax, eax
neg eax
cdq
push edx
push eax
push ecx
jmp 0x100fdb73
mov edx, dword [esp + 0x38]
mov esi, dword [edx + 0x1014e910]
cmp byte [edi + 0x3e], bl
jne 0x100fb78c
and esi, 0xfff7ffff
mov ebx, dword [esp + 0x28]
xor eax, eax
call fcn.100fa4a0
test al, al
mov eax, dword [esp + 0x18]
je 0x100fb7ea
or dword [eax + 0x18], esi
xor ebx, ebx
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fb7b7
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fb7d8
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x86
mov byte [eax + 3], bl
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x18]
push ecx
call fcn.100fa810
add esp, 4
jmp 0x100fdb82
mov ecx, esi
not ecx
and dword [eax + 0x18], ecx
cmp esi, 0x1000000
jne 0x100fb7a2
xor ebx, ebx
mov dword [eax + 0x1f8], ebx
mov dword [eax + 0x1fc], ebx
jmp 0x100fb7a4
cmp esi, ebx
je 0x100fdb82
mov edx, dword [esp + 0x1c]
push edx
push esi
push edi
call fcn.100e7ce0
add esp, 0xc
mov dword [esp + 0x2c], eax
cmp eax, ebx
je 0x100fdb82
mov dword [esp + 0x30], ebx
mov esi, eax
call fcn.100e8d00
push 6
mov edi, ebp
mov dword [esp + 0x48], eax
call fcn.100d0da0
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x78]
add esp, 4
push eax
mov eax, edi
mov dword [edi + 0x4c], 6
call fcn.100ed6a0
add esp, 4
push ebx
push 0x10163978
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.name
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.type
push ebx
push 2
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.notnull
push ebx
push 3
mov ecx, ebp
call fcn.100d0e20
add esp, 0x40
push ebx
push str.dflt_value
push ebx
push 4
mov ecx, ebp
call fcn.100d0e20
push ebx
push 0x1017ada4
push ebx
push 5
mov ecx, ebp
call fcn.100d0e20
push esi
mov eax, edi
call fcn.100eaa00
mov ecx, dword [esi + 4]
xor edx, edx
add esp, 0x24
cmp dx, word [esi + 0x26]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x74], ecx
jge 0x100fdb82
lea ecx, [edx + 1]
mov eax, dword [esp + 0x74]
test byte [eax + 0x17], 2
je 0x100fb8fb
add dword [esp + 0x30], ecx
jmp 0x100fbca0
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fb913
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fb93c
mov ecx, 1
mov eax, dword [ebp + 4]
add dword [ebp + 0x1c], ecx
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x34]
sub edx, dword [esp + 0x30]
mov byte [eax], 0x17
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 + 0x74]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
jg 0x100fb960
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fb960
mov esi, 1
jmp 0x100fb985
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5f
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 0x100fb9e2
cmp byte [edi + 0x40], bl
jne 0x100fb9e2
cmp esi, ebx
jge 0x100fb99e
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fb9c2
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fb9ed
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fb9ed
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x38], eax
cmp eax, ebx
jne 0x100fba04
mov dword [esp + 0x38], 0x1014d5e3
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fba1e
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fba1e
mov esi, 1
jmp 0x100fba43
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fba9f
cmp byte [edi + 0x40], bl
jne 0x100fba9f
cmp esi, ebx
jge 0x100fba5c
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fba7f
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fbaaa
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fbaaa
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov edx, dword [esp + 0x74]
mov esi, dword [ebp + 0x1c]
xor ecx, ecx
cmp byte [edx + 0x14], bl
setne cl
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x48], ecx
jg 0x100fbacd
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fbaf6
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
mov edx, dword [esp + 0x48]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x17
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 + 0x74]
mov eax, dword [eax + 8]
mov esi, dword [ebp + 0x1c]
mov dword [esp + 0x38], eax
cmp eax, ebx
je 0x100fbbb1
cmp dword [ebp + 0x20], esi
jg 0x100fbb23
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fbb23
mov esi, 1
jmp 0x100fbb48
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fbba4
cmp byte [edi + 0x40], bl
jne 0x100fbba4
cmp esi, ebx
jge 0x100fbb61
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fbb84
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fbbe6
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fbbe6
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
jmp 0x100fbbe6
cmp dword [ebp + 0x20], esi
jg 0x100fbbc1
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fbbe6
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x1a
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 + 0x74]
test byte [eax + 0x17], 1
jne 0x100fbbf4
xor esi, esi
jmp 0x100fbc23
mov eax, dword [esp + 0x44]
mov esi, 1
cmp eax, ebx
je 0x100fbc23
mov ecx, dword [esp + 0x2c]
movsx ecx, word [ecx + 0x26]
cmp ecx, esi
jl 0x100fbc23
mov eax, dword [eax + 4]
mov edx, dword [esp + 0x34]
movsx edi, word [eax]
cmp edi, edx
je 0x100fbc23
inc esi
add eax, 2
cmp esi, ecx
jle 0x100fbc14
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x48], eax
jg 0x100fbc3e
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fbc63
mov eax, dword [esp + 0x48]
inc dword [ebp + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
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 0x100fbc76
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fbca0
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], 6
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x34]
movsx edx, word [edx + 0x26]
add dword [esp + 0x74], 0x18
mov ecx, 1
add eax, ecx
cmp eax, edx
mov dword [esp + 0x34], eax
jl 0x100fb8e8
jmp 0x100fdb82
mov ebp, dword [esp + 0x74]
mov edi, ebp
call fcn.10101930
mov esi, eax
push 4
mov edi, esi
call fcn.100d0da0
mov eax, dword [esp + 0x18]
add esp, 4
push eax
mov eax, ebp
mov dword [ebp + 0x4c], 4
call fcn.100ed6a0
add esp, 4
push ebx
push str.table
push ebx
push ebx
mov ecx, esi
call fcn.100d0e20
push ebx
push str.index
push ebx
push 1
mov ecx, esi
call fcn.100d0e20
push ebx
push str.width
push ebx
push 2
mov ecx, esi
call fcn.100d0e20
push ebx
push str.height
push ebx
push 3
mov ecx, esi
call fcn.100d0e20
mov ecx, dword [esp + 0x60]
mov edx, dword [ecx + 0xc]
mov eax, dword [edx + 0x10]
add esp, 0x40
mov dword [esp + 0x34], eax
cmp eax, ebx
je 0x100fdb82
jmp 0x100fbd56
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 8]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov dword [esp + 0x38], eax
mov eax, dword [eax]
mov dword [esp + 0x74], eax
jg 0x100fbd7d
mov edi, esi
call fcn.100cf4d0
test eax, eax
je 0x100fbd7d
mov ebp, 1
jmp 0x100fbda4
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], 0x5f
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 [esi + 4]
mov edi, dword [esi]
mov eax, ebp
cmp ecx, ebx
je 0x100fbdff
cmp byte [edi + 0x40], bl
jne 0x100fbdff
cmp ebp, ebx
jge 0x100fbdbc
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.100cfb40
mov dword [ebp + 0x10], ebx
cmp dword [esp + 0x74], ebx
jne 0x100fbde0
mov dword [ebp + 0x10], ebx
mov byte [ebp + 1], bl
jmp 0x100fbe0a
mov ecx, dword [esp + 0x74]
call fcn.100b6960
mov edx, dword [esi]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [ebp + 0x10], eax
mov byte [ebp + 1], 0xff
xor ebx, ebx
jmp 0x100fbe0a
mov ecx, dword [esp + 0x74]
xor eax, eax
call fcn.100cfb40
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
jg 0x100fbe1d
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fbe43
mov ecx, dword [esi + 4]
inc dword [esi + 0x1c]
lea eax, [ebp + ebp*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x1a
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 edx, dword [esp + 0x38]
mov ax, word [edx + 0x2a]
call fcn.100b7b70
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov dword [esp + 0x74], eax
jg 0x100fbe67
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fbe91
mov ecx, dword [esi + 4]
inc dword [esi + 0x1c]
mov edx, dword [esp + 0x74]
lea eax, [ebp + ebp*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x17
mov byte [eax + 3], bl
mov dword [eax + 4], edx
mov dword [eax + 8], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x38]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov ecx, dword [eax + 0x1c]
mov dword [esp + 0x74], ecx
jg 0x100fbeaf
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fbed9
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
mov ecx, dword [esp + 0x74]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 4
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 0x100fbeec
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fbf17
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], 0x20
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 4
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + 8]
mov dword [esp + 0x74], eax
cmp eax, ebx
je 0x100fc0c8
lea ebx, [ebx]
mov edx, dword [esp + 0x74]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov eax, dword [edx]
mov dword [esp + 0x38], eax
jg 0x100fbf54
mov edi, esi
call fcn.100cf4d0
test eax, eax
je 0x100fbf54
mov ebp, 1
jmp 0x100fbf7a
mov edx, dword [esi + 4]
inc dword [esi + 0x1c]
lea ecx, [ebp + ebp*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fbfd4
cmp byte [edi + 0x40], bl
jne 0x100fbfd4
cmp ebp, ebx
jge 0x100fbf92
mov eax, dword [esi + 0x1c]
dec eax
lea eax, [eax + eax*4]
lea ebp, [ecx + eax*4]
movsx eax, byte [ebp + 1]
mov ecx, dword [ebp + 0x10]
call fcn.100cfb40
mov dword [ebp + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fbfb5
mov dword [ebp + 0x10], ebx
mov byte [ebp + 1], bl
jmp 0x100fbfdf
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [esi]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [ebp + 0x10], eax
mov byte [ebp + 1], 0xff
xor ebx, ebx
jmp 0x100fbfdf
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov ecx, dword [esp + 0x74]
mov ax, word [ecx + 0x30]
call fcn.100b7b70
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov dword [esp + 0x48], eax
jg 0x100fc003
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc02d
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
mov ecx, dword [esp + 0x48]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
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 edx, dword [esp + 0x74]
mov eax, dword [edx + 8]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov ecx, dword [eax]
mov dword [esp + 0x48], ecx
jg 0x100fc04d
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc077
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
mov ecx, dword [esp + 0x48]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 4
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 0x100fc08a
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc0b5
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], 0x20
mov byte [eax + 3], bl
mov dword [eax + 4], ecx
mov dword [eax + 8], 4
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x74]
mov eax, dword [ecx + 0x14]
mov dword [esp + 0x74], eax
cmp eax, ebx
jne 0x100fbf30
mov edx, dword [esp + 0x34]
mov eax, dword [edx]
mov dword [esp + 0x34], eax
cmp eax, ebx
jne 0x100fbd52
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb82
mov eax, dword [esp + 0x1c]
push eax
push esi
mov ecx, edi
call fcn.100e7ed0
add esp, 8
mov dword [esp + 0x34], eax
cmp eax, ebx
je 0x100fdb82
mov esi, eax
mov ecx, dword [esi + 0xc]
push 3
mov edi, ebp
mov dword [esp + 0x4c], ecx
call fcn.100d0da0
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x78]
add esp, 4
push edx
mov dword [eax + 0x4c], 3
call fcn.100ed6a0
add esp, 4
push ebx
push str.seqno
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
push ebx
push 0x10163978
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.name
push ebx
push 2
mov ecx, ebp
call fcn.100d0e20
xor eax, eax
add esp, 0x30
mov dword [esp + 0x74], ebx
cmp ax, word [esi + 0x32]
jae 0x100fdb82
jmp 0x100fc178
mov esi, dword [esp + 0x34]
mov ecx, dword [esi + 4]
mov edx, dword [esp + 0x74]
movzx eax, word [ecx + edx*2]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x40], eax
jg 0x100fc19a
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc1c4
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x74]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x17
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 0x100fc1d7
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc201
mov ecx, dword [ebp + 4]
inc dword [ebp + 0x1c]
movsx edx, word [esp + 0x40]
lea eax, [esi + esi*4]
lea eax, [ecx + eax*4]
mov byte [eax], 0x17
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
movsx eax, word [esp + 0x40]
mov ecx, dword [esp + 0x48]
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 + 0x38], eax
jg 0x100fc231
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fc231
mov esi, 1
jmp 0x100fc256
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fc2b2
cmp byte [edi + 0x40], bl
jne 0x100fc2b2
cmp esi, ebx
jge 0x100fc26f
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fc292
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fc2bd
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fc2bd
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fc2d0
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc2fa
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], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x74]
movzx edx, word [ecx + 0x32]
inc eax
cmp eax, edx
mov dword [esp + 0x74], eax
jl 0x100fc174
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb82
mov eax, dword [esp + 0x1c]
push eax
push esi
push edi
call fcn.100e7ce0
add esp, 0xc
mov dword [esp + 0x48], eax
cmp eax, ebx
je 0x100fdb82
mov ebp, dword [esp + 0x74]
mov edi, ebp
call fcn.10101930
mov esi, eax
push 3
mov edi, esi
call fcn.100d0da0
mov ecx, dword [esp + 0x18]
add esp, 4
push ecx
mov eax, ebp
mov dword [ebp + 0x4c], 3
call fcn.100ed6a0
add esp, 4
push ebx
push 0x1017adc0
push ebx
push ebx
mov ecx, esi
call fcn.100d0e20
push ebx
push str.name
push ebx
push 1
mov ecx, esi
call fcn.100d0e20
push ebx
push str.unique
push ebx
push 2
mov ecx, esi
call fcn.100d0e20
mov edx, dword [esp + 0x78]
mov eax, dword [edx + 8]
add esp, 0x30
mov dword [esp + 0x74], eax
mov dword [esp + 0x34], ebx
cmp eax, ebx
je 0x100fdb82
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
jg 0x100fc3c6
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc3f1
mov edx, dword [esi + 4]
lea eax, [ebp + ebp*4]
lea eax, [edx + eax*4]
mov edx, dword [esp + 0x34]
mov ecx, 1
add dword [esi + 0x1c], ecx
mov byte [eax], 0x17
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 + 0x74]
mov ebp, dword [esi + 0x1c]
cmp dword [esi + 0x20], ebp
mov ecx, dword [eax]
mov dword [esp + 0x38], ecx
jg 0x100fc415
mov edi, esi
call fcn.100cf4d0
test eax, eax
je 0x100fc415
mov ebp, 1
jmp 0x100fc43b
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5f
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 0x100fc496
cmp byte [edi + 0x40], bl
jne 0x100fc496
cmp ebp, ebx
jge 0x100fc453
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.100cfb40
mov dword [ebp + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fc477
mov dword [ebp + 0x10], ebx
mov byte [ebp + 1], bl
jmp 0x100fc4a1
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [esi]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [ebp + 0x10], eax
mov byte [ebp + 1], 0xff
xor ebx, ebx
jmp 0x100fc4a1
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov ecx, dword [esp + 0x74]
mov ebp, dword [esi + 0x1c]
xor eax, eax
cmp byte [ecx + 0x36], bl
setne al
cmp dword [esi + 0x20], ebp
mov dword [esp + 0x48], eax
jg 0x100fc4c4
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc4ee
mov eax, dword [esi + 4]
inc dword [esi + 0x1c]
mov ecx, dword [esp + 0x48]
lea edx, [ebp + ebp*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x17
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 0x100fc501
mov edi, esi
call fcn.100cf4d0
test eax, eax
jne 0x100fc52e
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], 0x20
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 0x100fc533
mov ecx, 1
mov edx, dword [esp + 0x74]
mov eax, dword [edx + 0x14]
add dword [esp + 0x34], ecx
mov dword [esp + 0x74], eax
cmp eax, ebx
jne 0x100fc3b3
jmp 0x100fdb82
push 3
mov edi, ebp
call fcn.100d0da0
mov eax, dword [esp + 0x78]
add esp, 4
push ebx
push 0x1017adc0
push ebx
push ebx
mov ecx, ebp
mov dword [eax + 0x4c], 3
call fcn.100d0e20
push ebx
push str.name
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.file
push ebx
push 2
mov ecx, ebp
call fcn.100d0e20
mov ecx, dword [esp + 0x48]
add esp, 0x30
cmp dword [ecx + 0x14], ebx
mov dword [esp + 0x34], ebx
jle 0x100fdb82
mov dword [esp + 0x74], ebx
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x10]
mov ecx, dword [esp + 0x74]
cmp dword [ecx + eax + 4], ebx
je 0x100fc7b2
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fc5d5
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc5ff
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], 0x17
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]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x74]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov eax, dword [edx + ecx]
mov dword [esp + 0x38], eax
jg 0x100fc62b
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fc62b
mov esi, 1
jmp 0x100fc650
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fc6ac
cmp byte [edi + 0x40], bl
jne 0x100fc6ac
cmp esi, ebx
jge 0x100fc669
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fc68c
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fc6b7
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fc6b7
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x10]
mov eax, dword [esp + 0x74]
mov eax, dword [eax + edx + 4]
call fcn.100ccc10
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov dword [esp + 0x38], eax
jg 0x100fc6e9
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fc6e9
mov esi, 1
jmp 0x100fc70e
mov edx, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea ecx, [esi + esi*4]
lea eax, [edx + ecx*4]
mov byte [eax], 0x5f
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 0x100fc76a
cmp byte [edi + 0x40], bl
jne 0x100fc76a
cmp esi, ebx
jge 0x100fc727
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x38], ebx
jne 0x100fc74a
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fc775
mov ecx, dword [esp + 0x38]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fc775
mov ecx, dword [esp + 0x38]
xor eax, eax
call fcn.100cfb40
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fc788
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc7b2
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], 3
mov dword [eax + 0xc], ebx
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x18]
add dword [esp + 0x74], 0x10
inc eax
cmp eax, dword [ecx + 0x14]
mov dword [esp + 0x34], eax
jl 0x100fc5ad
jmp 0x100fdb82
push 2
mov edi, ebp
mov dword [esp + 0x3c], ebx
call fcn.100d0da0
mov edx, dword [esp + 0x78]
add esp, 4
push ebx
push 0x1017adc0
push ebx
push ebx
mov ecx, ebp
mov dword [edx + 0x4c], 2
call fcn.100d0e20
push ebx
push str.name
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
mov eax, dword [esp + 0x38]
mov eax, dword [eax + 0x1ac]
add esp, 0x20
mov dword [esp + 0x34], eax
cmp eax, ebx
je 0x100fdb82
jmp 0x100fc834
mov eax, dword [esp + 0x34]
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax + 8]
mov dword [esp + 0x74], ecx
jg 0x100fc84e
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc878
mov eax, dword [ebp + 4]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x38]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x17
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 + 0x74]
mov esi, dword [ebp + 0x1c]
inc dword [esp + 0x38]
cmp dword [ebp + 0x20], esi
mov ecx, dword [eax]
mov dword [esp + 0x74], ecx
jg 0x100fc8a0
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fc8a0
mov esi, 1
jmp 0x100fc8c5
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [esi + esi*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5f
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 0x100fc922
cmp byte [edi + 0x40], bl
jne 0x100fc922
cmp esi, ebx
jge 0x100fc8de
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.100cfb40
mov dword [esi + 0x10], ebx
cmp dword [esp + 0x74], ebx
jne 0x100fc902
mov dword [esi + 0x10], ebx
mov byte [esi + 1], bl
jmp 0x100fc92d
mov ecx, dword [esp + 0x74]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov dword [esi + 0x10], eax
mov byte [esi + 1], 0xff
xor ebx, ebx
jmp 0x100fc92d
mov ecx, dword [esp + 0x74]
xor eax, eax
call fcn.100cfb40
mov esi, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], esi
jg 0x100fc940
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fc96a
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], 0x20
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 + 0x34]
mov eax, dword [eax]
mov dword [esp + 0x34], eax
cmp eax, ebx
jne 0x100fc830
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb82
mov ecx, dword [esp + 0x1c]
push ecx
push esi
push edi
call fcn.100e7ce0
add esp, 0xc
mov dword [esp + 0x40], eax
cmp eax, ebx
je 0x100fdb82
mov esi, dword [esp + 0x74]
mov edi, esi
call fcn.10101930
mov edx, dword [esp + 0x40]
mov ebp, eax
mov eax, dword [edx + 0x10]
mov dword [esp + 0x74], eax
cmp eax, ebx
je 0x100fdb82
push 8
mov edi, ebp
mov dword [esp + 0x24], ebx
call fcn.100d0da0
mov eax, dword [esp + 0x18]
add esp, 4
push eax
mov eax, esi
mov dword [esi + 0x4c], 8
call fcn.100ed6a0
add esp, 4
push ebx
push 0x10169640
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
push ebx
push 0x1017adc0
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.table
push ebx
push 2
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.from
push ebx
push 3
mov ecx, ebp
call fcn.100d0e20
add esp, 0x40
push ebx
push 0x1017adcc
push ebx
push 4
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.on_update
push ebx
push 5
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.on_delete
push ebx
push 6
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.match
push ebx
push 7
mov ecx, ebp
call fcn.100d0e20
add esp, 0x40
mov ecx, dword [esp + 0x74]
cmp dword [ecx + 0x14], ebx
mov dword [esp + 0x2c], ebx
jle 0x100fccba
mov edx, ecx
add edx, 0x24
mov dword [esp + 0x38], edx
lea esp, [esp]
mov eax, dword [esp + 0x38]
mov esi, dword [eax + 4]
mov ecx, dword [esp + 0x74]
mov al, byte [ecx + 0x19]
call fcn.100fa8a0
mov dword [esp + 0x3c], eax
mov al, byte [ecx + 0x1a]
call fcn.100fa8a0
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], eax
mov dword [esp + 0x48], eax
jg 0x100fcace
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fcaf8
mov eax, dword [esp + 0x48]
lea edx, [eax + eax*4]
mov eax, dword [ebp + 4]
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x20]
mov ecx, 1
add dword [ebp + 0x1c], ecx
mov byte [eax], 0x17
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 + 0x48], eax
jg 0x100fcb13
mov edi, ebp
call fcn.100cf4d0
test eax, eax
jne 0x100fcb3c
mov eax, dword [esp + 0x48]
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], 0x17
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 + 0x74]
mov ecx, dword [eax + 8]
mov dword [esp + 0x30], ecx
mov ecx, dword [ebp + 0x1c]
cmp dword [ebp + 0x20], ecx
mov dword [esp + 0x48], ecx
jg 0x100fcb69
mov edi, ebp
call fcn.100cf4d0
test eax, eax
je 0x100fcb65
mov eax, 1
jmp 0x100fcb90
mov ecx, dword [esp + 0x48]
mov eax, dword [ebp + 4]
inc dword [ebp + 0x1c]
lea edx, [ecx + ecx*4]
lea eax, [eax + edx*4]
mov byte [eax], 0x5f
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 0x100fcbf7
cmp byte [edi + 0x40], bl
jne 0x100fcbf7
cmp eax, ebx
jge 0x100fcba7
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.100cfb40
mov eax, dword [esp + 0x34]
mov dword [eax + 0x10], ebx
cmp dword [esp + 0x30], ebx
jne 0x100fcbd3
mov dword [eax + 0x10], ebx
mov byte [eax + 1], bl
jmp 0x100fcc02
mov ecx, dword [esp + 0x30]
call fcn.100b6960
mov edx, dword [ebp]
mov edi, eax
mov ebx, ecx
call fcn.100b4d70
mov ecx, dword [esp + 0x34]
mov dword [ecx + 0x10], eax
mov byte [ecx + 1], 0xff
xor ebx, ebx
jmp 0x100fcc02
mov ecx, dword [esp + 0x30]
xor eax, eax
call fcn.100cfb40
mov ecx, dword [esp + 0x38]
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]
push ebx
push edx
xor eax, eax
push 0x5f
lea ecx, [eax + 4]
xor edx, edx
mov edi, ebp
call fcn.100cf670
add esp, 0xc
push ebx
push esi
neg esi
sbb esi, esi
and esi, 0x45
xor eax, eax
add esi, 0x1a
push esi
lea ecx, [eax + 5]
xor edx, edx
call fcn.100cf670
mov eax, dword [esp + 0x50]
add esp, 0xc
push ebx
push eax
xor eax, eax
push 0x5f
lea ecx, [eax + 6]
xor edx, edx
call fcn.100cf670
mov ecx, dword [esp + 0x48]
add esp, 0xc
push ebx
push ecx
xor eax, eax
push 0x5f
lea ecx, [eax + 7]
xor edx, edx
call fcn.100cf670
add esp, 0xc
push ebx
xor eax, eax
push str.NONE
push 0x5f
lea ecx, [eax + 8]
xor edx, edx
call fcn.100cf670
add esp, 0xc
push ebx
push 8
push 1
push 0x20
mov eax, ebp
call fcn.100cf550
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x84]
add dword [esp + 0x48], 8
inc eax
add esp, 0x10
cmp eax, dword [edx + 0x14]
mov dword [esp + 0x2c], eax
jl 0x100fca90
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 4]
inc dword [esp + 0x20]
mov dword [esp + 0x74], eax
cmp eax, ebx
jne 0x100fca6f
jmp 0x100fdb82
mov esi, dword [esp + 0x74]
mov eax, dword [esi + 0x4c]
lea ecx, [eax + 1]
add eax, 5
mov dword [esp + 0x34], eax
inc eax
mov edi, esi
mov dword [esp + 0x44], ecx
mov dword [esi + 0x4c], eax
call fcn.10101930
mov edi, eax
push 4
call fcn.100d0da0
add esp, 4
push ebx
push str.table
push ebx
push ebx
mov ecx, edi
call fcn.100d0e20
push ebx
push str.rowid
push ebx
push 1
mov ecx, edi
call fcn.100d0e20
push ebx
push str.parent
push ebx
push 2
mov ecx, edi
call fcn.100d0e20
push ebx
push str.fkid
push ebx
push 3
mov ecx, edi
call fcn.100d0e20
mov edx, dword [esp + 0x54]
add esp, 0x40
push edx
mov eax, esi
call fcn.100ed6a0
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x44]
mov eax, dword [ecx + edx + 0xc]
mov eax, dword [eax + 0x10]
add esp, 4
cmp eax, ebx
je 0x100fdb82
lea ecx, [ecx]
mov esi, dword [esp + 0x74]
cmp dword [esp + 0x28], ebx
je 0x100fcd9a
mov ecx, dword [esp + 0x28]
push ecx
push ebx
mov ebx, dword [esp + 0x24]
mov eax, esi
call fcn.100e7de0
mov ebp, eax
add esp, 8
xor eax, eax
mov dword [esp + 0x2c], ebp
xor ebx, ebx
jmp 0x100fcda5
mov edx, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x2c], edx
mov ebp, edx
mov dword [esp + 0x48], eax
cmp ebp, ebx
je 0x100fd169
cmp dword [ebp + 0x10], ebx
je 0x100fd169
mov eax, dword [ebp]
mov ecx, dword [ebp + 0x20]
mov edx, dword [esp + 0x14]
push eax
push ebx
push ecx
push edx
mov eax, esi
call fcn.100e7630
movsx ecx, word [ebp + 0x26]
mov eax, dword [esp + 0x44]
inc eax
add eax, ecx
add esp, 0x10
cmp eax, dword [esi + 0x4c]
jle 0x100fcde5
mov dword [esi + 0x4c], eax
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x2c]
push 0x32
push edx
push ebx
mov eax, ebp
mov ebx, esi
call fcn.100f53d0
mov eax, dword [ebp]
mov ecx, dword [esp + 0x50]
add esp, 0xc
push 0
push eax
push 0x5f
xor eax, eax
xor edx, edx
call fcn.100cf670
mov ebp, dword [ebp + 0x10]
add esp, 0xc
mov dword [esp + 0x20], 1
test ebp, ebp
je 0x100fcee2
jmp 0x100fce30
mov ecx, dword [esp + 0x1c]
mov edx, dword [ebp + 8]
mov eax, dword [esp + 0x18]
push ecx
push edx
push eax
call fcn.100e7ce0
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x100fced3
mov ecx, dword [ebx]
mov edx, dword [ebx + 0x20]
mov eax, dword [esp + 0x14]
push ecx
push 0
push edx
push eax
mov eax, esi
mov dword [esp + 0x40], 0
call fcn.100e7630
push 0
lea ecx, [esp + 0x44]
push ecx
push ebp
push ebx
push esi
call fcn.100f2700
add esp, 0x24
test eax, eax
jne 0x100fdb82
mov esi, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
test esi, esi
jne 0x100fcead
mov edx, dword [esp + 0x14]
mov esi, dword [esp + 0x74]
push 0x32
push edx
push eax
mov eax, ebx
mov ebx, esi
call fcn.100f53d0
add esp, 0xc
jmp 0x100fced3
mov ecx, dword [esp + 0x14]
mov edx, dword [esi + 0x2c]
push ecx
push edx
push eax
push 0x32
mov eax, edi
call fcn.100cf550
mov ecx, esi
mov esi, dword [esp + 0x84]
add esp, 0x10
mov eax, esi
call fcn.100cfe00
mov ebp, dword [ebp + 4]
inc dword [esp + 0x20]
test ebp, ebp
jne 0x100fce30
mov eax, dword [esp + 0x20]
cmp dword [esi + 0x48], eax
jge 0x100fceee
mov dword [esi + 0x48], eax
push 0
push 0x67
mov eax, edi
call fcn.100cf600
mov ecx, dword [esp + 0x34]
mov ebp, dword [ecx + 0x10]
add esp, 8
mov dword [esp + 0x50], eax
mov dword [esp + 0x20], 1
test ebp, ebp
je 0x100fd142
jmp 0x100fcf20
mov edx, dword [esp + 0x1c]
mov eax, dword [ebp + 8]
mov ecx, dword [esp + 0x18]
push edx
push eax
push ecx
call fcn.100e7ce0
xor ebx, ebx
mov esi, eax
add esp, 0xc
mov dword [esp + 0x4c], esi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x40], ebx
cmp esi, ebx
je 0x100fcf63
mov ecx, dword [esp + 0x74]
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x34]
push eax
push ebp
push esi
push ecx
call fcn.100f2700
add esp, 0x14
mov eax, edi
call fcn.100cf7e0
mov dword [esp + 0x38], eax
cmp esi, ebx
je 0x100fd025
cmp dword [esp + 0x30], ebx
jne 0x100fd025
mov edx, dword [esp + 0x2c]
movsx eax, word [edx + 0x24]
mov esi, dword [esp + 0x34]
mov ebx, dword [ebp + 0x24]
inc esi
cmp ebx, eax
mov eax, edi
je 0x100fcfde
push esi
push ebx
push 0
push 0x2b
call fcn.100cf550
mov ecx, dword [esp + 0x3c]
push esi
push ecx
push edi
mov eax, ebx
call fcn.10109910
mov eax, dword [esp + 0x54]
add esp, 0x1c
push edi
mov ecx, esi
mov edx, 0x4a
call fcn.100cf650
mov eax, dword [edi + 0x1c]
add esp, 4
add eax, 3
push edi
mov ecx, esi
mov edx, 0x23
call fcn.100cf650
add esp, 4
jmp 0x100fcfed
push 0
push esi
push 0
push 0x62
call fcn.100cf550
add esp, 0x10
mov edx, dword [esp + 0x20]
push esi
push 0
push edx
push 0x41
mov eax, edi
call fcn.100cf550
mov eax, dword [esp + 0x48]
push 0
push eax
push 0
push 0x10
mov eax, edi
call fcn.100cf550
mov eax, dword [edi + 0x1c]
add esp, 0x20
sub eax, 2
mov edx, edi
call fcn.100cfb20
jmp 0x100fd0c4
xor esi, esi
cmp dword [ebp + 0x14], esi
jle 0x100fd079
mov ebx, dword [esp + 0x34]
lea ecx, [ebp + 0x24]
inc ebx
mov dword [esp + 0x3c], ecx
mov eax, dword [esp + 0x40]
test eax, eax
je 0x100fd045
mov eax, dword [eax + esi*4]
jmp 0x100fd04b
mov edx, dword [esp + 0x3c]
mov eax, dword [edx]
mov ecx, dword [esp + 0x2c]
push 0
push ecx
mov ecx, edi
call fcn.100e1820
mov eax, dword [esp + 0x40]
push edi
mov ecx, ebx
mov edx, 0x4a
call fcn.100cf650
add dword [esp + 0x48], 8
inc esi
add esp, 0xc
inc ebx
cmp esi, dword [ebp + 0x14]
jl 0x100fd038
cmp dword [esp + 0x4c], 0
je 0x100fd0c4
mov ebx, dword [esp + 0x34]
mov edx, dword [ebp + 0x14]
push ebx
push edx
lea eax, [ebx + 1]
push eax
push 0x2d
mov eax, edi
call fcn.100cf550
mov esi, dword [esp + 0x40]
mov eax, edi
call fcn.100f5490
push eax
push edi
xor ecx, ecx
or eax, 0xffffffff
call fcn.100cfd20
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x38]
push 0
push 0x40
push edi
mov eax, ebx
call fcn.100cf770
add esp, 0x24
mov esi, dword [esp + 0x44]
push 0
lea eax, [esi + 1]
push eax
push 0
push 0x62
mov eax, edi
call fcn.100cf550
mov eax, dword [ebp + 8]
push 0
push eax
push 0x5f
xor eax, eax
lea ecx, [esi + 2]
xor edx, edx
call fcn.100cf670
mov ebx, dword [esp + 0x3c]
add esp, 0x1c
lea ecx, [ebx - 1]
push edi
lea eax, [esi + 3]
mov edx, 0x17
call fcn.100cf650
add esp, 4
push 0
push 4
push esi
push 0x20
mov eax, edi
call fcn.100cf550
mov ecx, dword [esp + 0x48]
push ecx
mov edx, edi
call fcn.100cf840
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x2c]
add esp, 0x14
call fcn.100b49f0
mov ebp, dword [ebp + 4]
inc ebx
mov dword [esp + 0x20], ebx
test ebp, ebp
jne 0x100fcf20
mov esi, dword [esp + 0x50]
push 0
lea edx, [esi + 1]
push edx
push 0
push 9
mov eax, edi
call fcn.100cf550
add esp, 0x10
mov eax, esi
mov edx, edi
call fcn.100cfb20
mov eax, dword [esp + 0x48]
xor ebx, ebx
cmp eax, ebx
jne 0x100fcd70
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb82
mov ebx, dword [esp + 0x28]
xor eax, eax
call fcn.100fa4a0
mov esi, dword [esp + 0x18]
movzx ebx, al
call fcn.100f2530
jmp 0x100fdb82
mov eax, dword [esp + 0x24]
movzx ecx, byte [eax]
mov eax, dword [esp + 0x7c]
xor edx, edx
cmp byte [ecx + 0x1014dc58], 0x71
sete dl
mov dword [esp + 0x44], edx
cmp dword [eax], ebx
jne 0x100fd1c1
mov dword [esp + 0x14], 0xffffffff
mov ecx, dword [esp + 0x74]
push 1
mov edi, ebp
mov dword [ecx + 0x4c], 6
call fcn.100d0da0
add esp, 4
push ebx
push str.integrity_check
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
add esp, 0x10
mov edi, 0x64
mov dword [esp + 0x20], edi
cmp esi, ebx
je 0x100fd216
lea edx, [esp + 0x20]
push edx
push esi
call fcn.100b72f0
mov edi, dword [esp + 0x28]
add esp, 8
cmp edi, ebx
jg 0x100fd216
mov edi, 0x64
mov dword [esp + 0x20], edi
push ebx
push 1
push edi
push 0x17
mov eax, ebp
call fcn.100cf550
mov ecx, dword [esp + 0x28]
xor eax, eax
add esp, 0x10
cmp dword [ecx + 0x14], ebx
mov dword [esp + 0x1c], eax
jle 0x100fd751
mov dword [esp + 0x30], ebx
mov ecx, dword [esp + 0x14]
xor esi, esi
cmp ecx, ebx
jl 0x100fd24f
cmp eax, ecx
jne 0x100fd736
push eax
mov eax, dword [esp + 0x78]
call fcn.100ed6a0
add esp, 4
push 1
push 0x80
mov eax, ebp
call fcn.100cf600
push ebx
push ebx
mov edi, eax
push ebx
push 0x16
mov eax, ebp
call fcn.100cf550
add esp, 0x18
mov eax, edi
mov edx, ebp
call fcn.100cfb20
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x10]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + ecx + 0xc]
add eax, 8
mov dword [esp + 0x4c], eax
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], eax
cmp eax, ebx
je 0x100fd2fa
mov edx, dword [esp + 0x2c]
mov edi, dword [edx + 8]
test byte [edi + 0x2c], 0x20
jne 0x100fd2c7
mov ecx, dword [edi + 0x20]
lea eax, [esi + 2]
push ebp
mov edx, 0x17
call fcn.100cf650
add esp, 4
inc esi
mov edi, dword [edi + 8]
cmp edi, ebx
je 0x100fd2ec
mov edi, edi
mov ecx, dword [edi + 0x2c]
lea eax, [esi + 2]
push ebp
mov edx, 0x17
call fcn.100cf650
mov edi, dword [edi + 0x14]
add esp, 4
inc esi
cmp edi, ebx
jne 0x100fd2d0
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
cmp eax, ebx
jne 0x100fd2a5
mov ecx, dword [esp + 0x74]
mov eax, dword [ecx + 0x4c]
lea ecx, [esi + 8]
cmp eax, ecx
jg 0x100fd30a
mov eax, ecx
mov edx, dword [esp + 0x74]
push 1
push esi
mov dword [edx + 0x4c], eax
push 2
push 0x77
mov eax, ebp
call fcn.100cf550
mov dl, byte [esp + 0x2c]
mov eax, ebp
call fcn.100cfb00
push 2
push 0x4a
mov eax, ebp
call fcn.100cf600
mov esi, dword [esp + 0x30]
add esp, 0x18
push 0xffffffffffffffff
push ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 0x10]
mov edx, dword [eax + ecx]
push edx
push str._in_database__s__n
call fcn.100b5f00
add esp, 0xc
push eax
xor eax, eax
push 0x5f
lea ecx, [eax + 3]
xor edx, edx
mov edi, ebp
call fcn.100cf670
add esp, 0xc
push ebx
push 4
push 2
push 0x1d
mov eax, ebp
call fcn.100cf550
push 2
push 3
push 4
push 0x5c
mov eax, ebp
call fcn.100cf550
push ebx
push 1
push 2
push 0x20
mov eax, ebp
call fcn.100cf550
mov eax, dword [esp + 0x80]
add esp, 0x30
mov edx, ebp
call fcn.100cfb20
mov eax, dword [esp + 0x4c]
mov eax, dword [eax + 8]
mov dword [esp + 0x2c], eax
cmp eax, ebx
je 0x100fd732
mov edi, edi
cmp dword [esp + 0x44], ebx
jne 0x100fd732
mov ecx, dword [esp + 0x2c]
mov eax, dword [ecx + 8]
mov dword [esp + 0x34], eax
cmp dword [eax + 8], ebx
je 0x100fd720
test byte [eax + 0x2c], 0x20
jne 0x100fd3ea
mov dword [esp + 0x3c], ebx
jmp 0x100fd3f3
call fcn.100e8d00
mov dword [esp + 0x3c], eax
push 1
push 0x80
mov eax, ebp
call fcn.100cf600
push ebx
push ebx
mov esi, eax
push ebx
push 0x16
mov eax, ebp
call fcn.100cf550
mov eax, esi
mov edx, ebp
call fcn.100cfb20
mov edx, dword [esp + 0x8c]
call fcn.100e1980
mov esi, dword [esp + 0x4c]
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x5c]
push ecx
push ebx
push 1
push 0x32
push esi
push edx
call fcn.100f8b00
add esp, 0x34
push ebx
push 7
push ebx
push 0x17
mov eax, ebp
call fcn.100cf550
mov esi, dword [esi + 8]
add esp, 0x10
xor edi, edi
cmp esi, ebx
je 0x100fd47a
lea ebx, [ebx]
push ebx
lea edx, [edi + 8]
push edx
push ebx
push 0x17
mov eax, ebp
call fcn.100cf550
mov esi, dword [esi + 0x14]
add esp, 0x10
inc edi
cmp esi, ebx
jne 0x100fd460
mov eax, dword [esp + 0x74]
mov eax, dword [eax + 0x4c]
lea ecx, [edi + 8]
cmp eax, ecx
jg 0x100fd48a
mov eax, ecx
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x74]
push ebx
push ebx
push edx
mov dword [ecx + 0x4c], eax
push 0x67
mov eax, ebp
call fcn.100cf550
push ebx
push 1
push 7
push 0x22
mov eax, ebp
call fcn.100cf550
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x54]
mov esi, dword [eax + 8]
add esp, 0x20
cmp esi, ebx
je 0x100fd616
mov eax, 8
sub eax, ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x50], eax
jmp 0x100fd4e0
cmp dword [esp + 0x3c], esi
je 0x100fd607
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x74]
push ebx
push ebx
push ecx
push esi
push edx
lea eax, [esp + 0x68]
call fcn.100ef940
mov ecx, dword [esp + 0x4c]
add esp, 0x14
mov edi, eax
mov eax, dword [esp + 0x50]
push ebx
add eax, ecx
push 1
push eax
push 0x22
mov eax, ebp
call fcn.100cf550
movzx edx, word [esi + 0x34]
push edx
mov edx, dword [esp + 0x4c]
push 0x40
push ebp
mov eax, edi
xor ecx, ecx
call fcn.100cf770
add esp, 0x1c
push ebx
push 0xffffffffffffffff
mov dword [esp + 0x54], eax
push 1
push 0x22
mov eax, ebp
call fcn.100cf550
push 0xfffffffffffffffe
xor eax, eax
push str.row
push 0x5f
lea ecx, [eax + 3]
xor edx, edx
mov edi, ebp
call fcn.100cf670
add esp, 0x1c
push 3
push 3
push 7
push 0x5c
mov eax, ebp
call fcn.100cf550
push 0xfffffffffffffffe
xor eax, eax
push str._missing_from_index
push 0x5f
lea ecx, [eax + 4]
xor edx, edx
call fcn.100cf670
add esp, 0x1c
push 3
push 3
push 4
push 0x5c
mov eax, ebp
call fcn.100cf550
mov eax, dword [esi]
push ebx
push eax
xor eax, eax
push 0x5f
lea ecx, [eax + 4]
xor edx, edx
call fcn.100cf670
add esp, 0x1c
push 3
push 3
push 4
push 0x5c
mov eax, ebp
call fcn.100cf550
push ebx
push 1
push 3
push 0x20
mov eax, ebp
call fcn.100cf550
push 1
push 0x80
mov eax, ebp
call fcn.100cf600
mov edi, eax
push 0x16
mov eax, ebp
call fcn.100cf5b0
add esp, 0x2c
mov eax, edi
mov edx, ebp
call fcn.100cfb20
mov eax, dword [esp + 0x4c]
mov edx, ebp
call fcn.100cfb20
mov ecx, dword [esp + 0x54]
push ecx
mov edx, ebp
call fcn.100cf840
add esp, 4
mov esi, dword [esi + 0x14]
inc dword [esp + 0x38]
cmp esi, ebx
jne 0x100fd4e0
mov esi, dword [esp + 0x58]
mov ecx, dword [esp + 0x40]
push ebp
mov eax, esi
mov edx, 9
call fcn.100cf650
add esp, 4
lea eax, [esi - 1]
mov edx, ebp
call fcn.100cfb20
push 0xfffffffffffffffe
xor eax, eax
push str.wrong__of_entries_in_index
push 0x5f
lea ecx, [eax + 2]
xor edx, edx
mov edi, ebp
call fcn.100cf670
mov edx, dword [esp + 0x40]
mov esi, dword [edx + 8]
add esp, 0xc
cmp esi, ebx
je 0x100fd720
mov dword [esp + 0x38], 8
lea esp, [esp]
cmp dword [esp + 0x3c], esi
je 0x100fd711
mov edi, dword [ebp + 0x1c]
push ebx
lea eax, [edi + 2]
push eax
push 1
push 0x80
mov eax, ebp
call fcn.100cf550
push ebx
push ebx
push ebx
push 0x16
mov eax, ebp
call fcn.100cf550
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x68]
push ebx
lea eax, [edx + ecx - 8]
push 3
push eax
push 0x2e
mov eax, ebp
call fcn.100cf550
mov ecx, dword [esp + 0x68]
push 3
add edi, 8
push edi
push ecx
push 0x4d
mov eax, ebp
call fcn.100cf550
add esp, 0x40
push ebx
push 0xffffffffffffffff
push 1
push 0x22
mov eax, ebp
call fcn.100cf550
mov edx, dword [esi]
push ebx
push edx
xor eax, eax
push 0x5f
lea ecx, [eax + 3]
xor edx, edx
mov edi, ebp
call fcn.100cf670
add esp, 0x1c
push 7
push 2
push 3
push 0x5c
mov eax, ebp
call fcn.100cf550
push ebx
push 1
push 7
push 0x20
mov eax, ebp
call fcn.100cf550
add esp, 0x20
mov esi, dword [esi + 0x14]
inc dword [esp + 0x38]
cmp esi, ebx
jne 0x100fd670
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
cmp eax, ebx
jne 0x100fd3c0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
add dword [esp + 0x30], 0x10
inc eax
cmp eax, dword [ecx + 0x14]
mov dword [esp + 0x1c], eax
jl 0x100fd23d
mov edi, dword [esp + 0x20]
push 0x1014ebfc
push 4
mov eax, ebp
call fcn.100cfa20
mov edx, edi
neg edx
mov ecx, ebp
mov esi, eax
call fcn.100cfae0
lea eax, [esi + 1]
mov edx, ebp
call fcn.100cfb20
push 0x1017ae60
lea eax, [esi + 2]
push ebp
mov ecx, 0xfffffffe
call fcn.100cfd20
add esp, 0x10
jmp 0x100fdb82
cmp esi, ebx
jne 0x100fd808
mov esi, dword [esp + 0x74]
mov edi, esi
call fcn.100fe490
test eax, eax
jne 0x100fdb82
push 1
mov edi, ebp
call fcn.100d0da0
add esp, 4
push ebx
push str.encoding
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
push ebx
push 1
push ebx
push 0x5f
mov eax, ebp
call fcn.100cf550
mov edx, dword [esi]
mov eax, dword [edx + 0x10]
mov ecx, dword [eax + 0xc]
movzx edx, byte [ecx + 0x4d]
mov eax, dword [edx*8 + 0x1014ec18]
push eax
push ebp
mov ecx, 0xfffffffe
or eax, 0xffffffff
call fcn.100cfd20
push ebx
push 1
push 1
push 0x20
mov eax, ebp
call fcn.100cf550
add esp, 0x38
jmp 0x100fdb82
mov ecx, dword [edi + 0x10]
mov edx, dword [ecx + 0xc]
movzx eax, word [edx + 0x4e]
test al, 1
je 0x100fd81e
test al, 4
je 0x100fdb82
mov eax, dword [str.UTF8]
mov edi, 0x1014ec18
cmp eax, ebx
je 0x100fd870
lea esp, [esp]
push eax
push esi
call fcn.100b6ae0
add esp, 8
test eax, eax
je 0x100fd84a
mov eax, dword [edi + 8]
add edi, 8
cmp eax, ebx
jne 0x100fd830
jmp 0x100fd870
mov al, byte [edi + 4]
cmp al, bl
movzx eax, al
jne 0x100fd859
mov eax, 2
mov ecx, dword [esp + 0x74]
mov edx, dword [ecx]
mov ecx, dword [edx + 0x10]
mov edx, dword [ecx + 0xc]
mov byte [edx + 0x4d], al
cmp dword [edi], ebx
jne 0x100fdb82
mov edi, dword [esp + 0x74]
push esi
push str.unsupported_encoding:__s
call fcn.100b69f0
add esp, 8
jmp 0x100fdb82
mov eax, 1
mov ecx, edx
shl eax, cl
or dword [ebp + 0x6c], eax
cmp edx, 1
je 0x100fd8a3
mov ecx, dword [esp + 0x14]
mov eax, ebp
call fcn.100d01a0
mov ecx, dword [esp + 0x24]
movsx eax, byte [ecx]
add eax, 0xffffffbf
cmp eax, 0x32
ja case.0x100fd8b9.66
movzx edx, byte [eax + 0x100fdc40]
jmp dword [edx*4 + 0x100fdc30]
mov edi, 8
jmp 0x100fd8d7
xor edi, edi
jmp 0x100fd8d7
mov edi, 1
jmp 0x100fd8d7
mov edi, 6
cmp esi, ebx
je 0x100fd932
cmp edi, ebx
je 0x100fd932
push 0x1014ec0c
push 3
mov eax, ebp
call fcn.100cfa20
mov edx, dword [esp + 0x1c]
add esp, 8
mov ecx, ebp
mov ebx, eax
call fcn.100cfad0
mov ecx, esi
call fcn.100b73c0
lea ecx, [ebx + 1]
mov edx, eax
mov eax, ecx
mov ecx, ebp
call fcn.100cfad0
mov edx, dword [esp + 0x14]
lea esi, [ebx + 2]
mov eax, esi
mov ecx, ebp
call fcn.100cfad0
mov edx, edi
mov eax, esi
mov ecx, ebp
call fcn.100cfae0
jmp 0x100fdb82
push 0x1014ec60
push 3
mov eax, ebp
call fcn.100cfa20
mov edx, dword [esp + 0x1c]
mov ecx, ebp
mov esi, eax
call fcn.100cfad0
inc esi
mov eax, esi
mov ecx, ebp
call fcn.100cfad0
mov edx, edi
mov eax, esi
mov ecx, ebp
call fcn.100cfaf0
push 1
mov edi, ebp
call fcn.100d0da0
mov edx, dword [esp + 0x30]
add esp, 0xc
push 0xffffffffffffffff
push edx
push ebx
push ebx
mov ecx, ebp
call fcn.100d0e20
add esp, 0x10
jmp 0x100fdb82
push 1
mov edi, ebp
xor esi, esi
call fcn.100d0da0
mov eax, dword [esp + 0x78]
add esp, 4
push ebx
push str.compile_option
push ebx
push ebx
mov ecx, ebp
mov dword [eax + 0x4c], 1
call fcn.100d0e20
push ebx
call fcn.100b1ac0
add esp, 0x14
cmp eax, ebx
je 0x100fdb82
push ebx
push eax
xor eax, eax
push 0x5f
lea ecx, [eax + 1]
xor edx, edx
mov edi, ebp
inc esi
call fcn.100cf670
add esp, 0xc
push ebx
push 1
push 1
push 0x20
mov eax, ebp
call fcn.100cf550
push esi
call fcn.100b1ac0
add esp, 0x14
cmp eax, ebx
jne 0x100fd9bf
jmp 0x100fdb82
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x48], edx
cmp dword [ecx], ebx
jne 0x100fda09
mov dword [esp + 0x48], 0xa
mov dword [esp + 0x40], ebx
cmp esi, ebx
je 0x100fda47
push str.full
push esi
call fcn.100b6ae0
add esp, 8
test eax, eax
jne 0x100fda2d
mov dword [esp + 0x40], 1
jmp 0x100fda47
push str.restart
push esi
call fcn.100b6ae0
add esp, 8
test eax, eax
jne 0x100fda47
mov dword [esp + 0x40], 2
push 3
mov edi, ebp
call fcn.100d0da0
mov edx, dword [esp + 0x78]
add esp, 4
push ebx
push str.busy
push ebx
push ebx
mov ecx, ebp
mov dword [edx + 0x4c], 3
call fcn.100d0e20
push ebx
push 0x1017aea0
push ebx
push 1
mov ecx, ebp
call fcn.100d0e20
push ebx
push str.checkpointed
push ebx
push 2
mov ecx, ebp
call fcn.100d0e20
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
push 1
push eax
push ecx
push 0xb
mov eax, ebp
call fcn.100cf550
add esp, 0x40
push ebx
push 3
push 1
push 0x20
mov eax, ebp
call fcn.100cf550
add esp, 0x10
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdad0
mov ecx, esi
call fcn.100b73c0
push eax
push edi
call fcn.1011b5c0
add esp, 8
cmp dword [edi + 0xcc], 0x1011b580
jne 0x100fdae2
mov ebx, dword [edi + 0xd0]
mov eax, ebx
cdq
push edx
push eax
push str.wal_autocheckpoint
jmp 0x100fdb73
push edi
call fcn.1011a2b0
add esp, 4
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb2f
lea edx, [esp + 0x58]
push 0xf4240
push edx
mov al, 1
mov ecx, esi
call fcn.100b70f0
add esp, 8
test eax, eax
jne 0x100fdb2f
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
push eax
push ecx
call fcn.100b42d0
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.100b42d0
push edx
push eax
mov eax, dword [esp + 0x84]
push str.soft_heap_limit
call fcn.100fa640
add esp, 0x14
jmp 0x100fdb82
cmp esi, ebx
je 0x100fdb65
mov ecx, esi
call fcn.100b73c0
push eax
push edi
call fcn.1011af70
add esp, 8
mov eax, dword [edi + 0x1e4]
cdq
push edx
push eax
push str.timeout
mov eax, dword [esp + 0x80]
call fcn.100fa640
add esp, 0xc
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x24]
mov ecx, esi
call fcn.100b49f0
mov eax, dword [esp + 0x28]
mov ecx, esi
call fcn.100b49f0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret