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

Disassembly:
sub esp, 0x6c
mov eax, dword [esp + 0x70]
push ebx
push esi
mov esi, dword [eax + 8]
mov ebx, dword [eax]
mov dword [esp + 8], ebx
mov dword [esp + 0x24], esi
test esi, esi
jne 0x65efb4
cmp dword [eax + 0x78], esi
jne 0x65ef99
test byte [ebx + 0x44], 8
jne 0x65ef99
mov byte [eax + 0x17], 1
push eax
call fcn.0066c560
mov esi, eax
add esp, 4
mov eax, dword [esp + 0x78]
mov dword [esp + 0x24], esi
test esi, esi
je 0x66116a
or dword [esi + 0x94], 0x20
lea ecx, [esp + 0x48]
push edi
mov edi, dword [esp + 0x84]
push ecx
push edi
push dword [esp + 0x88]
mov dword [eax + 0x2c], 2
push eax
call fcn.006682d0
add esp, 0x10
mov dword [esp + 0x10], eax
test eax, eax
js 0x661169
mov ebx, dword [ebx + 0x10]
push ebp
mov ebp, eax
shl ebp, 4
add ebx, ebp
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x48], ebx
cmp eax, 1
jne 0x65f01b
push dword [esp + 0x80]
call fcn.0065bc80
add esp, 4
test eax, eax
jne 0x661168
push dword [esp + 0x50]
push dword [esp + 0x14]
call fcn.0065b710
add esp, 8
mov dword [esp + 0x28], eax
test eax, eax
je 0x661168
cmp dword [esp + 0x90], 0
push dword [esp + 0x8c]
je 0x65f061
push 0x6c7398
push dword [esp + 0x18]
call fcn.0065af10
mov ecx, eax
add esp, 0xc
mov dword [esp + 0x18], ecx
jmp 0x65f073
push dword [esp + 0x14]
call fcn.0065b710
add esp, 8
mov dword [esp + 0x18], eax
mov ecx, eax
cmp dword [edi + 4], 0
jbe 0x65f07d
mov eax, dword [ebx]
jmp 0x65f07f
xor eax, eax
push eax
push ecx
push dword [esp + 0x30]
mov dword [esp + 0x28], eax
push 0x13
push dword [esp + 0x90]
call fcn.00640650
add esp, 0x14
test eax, eax
jne 0x66114a
mov dword [esp + 0x6c], eax
lea ecx, [esp + 0x6c]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x18]
push ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x14]
push 0xe
push dword [esp + 0x24]
mov dword [esp + 0x84], 0
push eax
mov dword [eax + 0x18c], 0
call fcn.006016f0
add esp, 0x10
mov dword [esp + 0x50], eax
test eax, eax
jne 0x65f124
push 1
push esi
call fcn.00675d90
push 0xffffffffffffffff
push dword [esp + 0x78]
push 0
push 0
push esi
call fcn.00675d40
push dword [esp + 0x88]
push esi
call fcn.0063c140
push dword [esp + 0x90]
call fcn.006014a0
add esp, 0x28
jmp 0x66114a
cmp eax, 0xc
je 0x65f165
mov ecx, dword [esp + 0x6c]
test ecx, ecx
je 0x65f153
push ecx
push 0x6b8fc4
push dword [esp + 0x88]
call fcn.00649670
push dword [esp + 0x78]
call fcn.006014a0
mov eax, dword [esp + 0x60]
add esp, 0x10
mov ecx, dword [esp + 0x80]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
jmp 0x66114a
push dword [esp + 0x28]
call fcn.00638ee0
add esp, 4
mov dword [esp + 0x34], eax
test eax, eax
je 0x66114a
test byte [eax + 5], 1
je 0x65f19e
push dword [esp + 0x80]
call fcn.00661a00
add esp, 4
test eax, eax
jne 0x66114a
mov eax, dword [esp + 0x34]
mov cl, byte [eax + 5]
test cl, 2
jne 0x65f1c1
test cl, 4
je 0x65f1b3
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x65f1c5
push eax
push esi
call fcn.0063e4b0
mov eax, dword [esp + 0x3c]
add esp, 8
mov edx, dword [esp + 0x18]
movzx ecx, byte [eax + 4]
cmp ecx, 0x27
ja case.0x65f1d2.3
jmp dword [ecx*4 + 0x661170]
mov ebp, dword [esp + 0x14]
push ebp
push esi
call fcn.00676930
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x65f21e
mov eax, dword [esp + 0x80]
push 0
push 0x6c34bc
push 9
add dword [eax + 0x2c], 2
push esi
call fcn.0066bdf0
add esp, 0x10
mov dword [eax + 4], ebp
mov dword [eax + 0x18], ebp
mov dword [eax + 0x7c], 0xfffff830
jmp 0x66114a
push eax
call fcn.006403f0
push eax
call fcn.0063ea60
push ebp
push 0
push dword [esp + 0x90]
mov edi, eax
call fcn.006410b0
push edi
push 3
push ebp
push 0x66
push esi
call fcn.0066bc10
mov eax, dword [ebx + 0xc]
mov dword [eax + 0x50], edi
mov eax, dword [ebx + 0xc]
push dword [eax + 0x50]
push dword [ebx + 4]
call fcn.00644780
add esp, 0x30
jmp 0x66114a
mov edi, dword [ebx + 4]
test edx, edx
jne 0x65f280
test edi, edi
je 0x65f279
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x20]
jmp 0x66113e
xor eax, eax
jmp 0x66113e
push edx
call fcn.006403f0
mov ecx, dword [esp + 0x14]
push 0
push 0xffffffffffffffff
push eax
push edi
mov dword [ecx + 0x54], eax
call fcn.00644870
add esp, 0x14
cmp eax, 7
jne 0x66114a
push dword [esp + 0x10]
call fcn.0065b8c0
add esp, 4
jmp 0x66114a
mov eax, dword [ebx + 4]
or ebp, 0xffffffff
mov dword [esp + 0x80], eax
test edx, edx
je 0x65f2ef
push str.fast
push edx
call fcn.00604cf0
add esp, 8
test eax, eax
jne 0x65f2dd
lea ebp, [eax + 2]
jmp 0x65f2ef
mov eax, dword [esp + 0x18]
push 0
push eax
call fcn.00656b60
add esp, 8
movzx ebp, al
cmp dword [edi + 4], 0
jne 0x65f325
test ebp, ebp
js 0x65f325
mov eax, dword [esp + 0x10]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x65f325
xor edi, edi
mov esi, eax
mov eax, dword [esi + 0x10]
push ebp
push dword [edi + eax + 4]
call fcn.006446a0
inc ebx
lea edi, [edi + 0x10]
add esp, 8
cmp ebx, dword [esi + 0x14]
jl 0x65f308
mov esi, dword [esp + 0x2c]
push ebp
push dword [esp + 0x84]
call fcn.006446a0
cdq
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0x14
jmp 0x66114a
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x80]
push ebp
push ebx
call fcn.00645b30
mov eax, dword [esp + 0x30]
add esp, 8
inc dword [ebx + 0x2c]
mov edi, dword [ebx + 0x2c]
movzx eax, byte [eax]
cmp byte [eax + 0x6c13b0], 0x70
jne 0x65f391
push edi
push ebp
push 0x9f
push esi
call fcn.0066bba0
add esp, 0x10
push 1
push edi
push 0x4e
push esi
call fcn.0066bba0
add esp, 0x10
jmp 0x66114a
mov eax, dword [esp + 0x18]
push eax
call fcn.006403f0
push eax
call fcn.0063ea60
push eax
push edi
push ebp
push 0xa0
push esi
call fcn.0066bc10
add esp, 0x1c
push 1
push edi
push 0x4e
push esi
call fcn.0066bba0
add esp, 0x10
jmp 0x66114a
push edx
mov ebp, 0x6c7304
call fcn.0062d2c0
mov ecx, eax
add esp, 4
mov eax, dword [edi + 4]
mov dword [esp + 0x80], ecx
test eax, eax
jne 0x65f449
cmp ecx, 0xffffffff
jne 0x65f3f2
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 0x4b]
jmp 0x65f45a
test eax, eax
jne 0x65f449
mov eax, dword [esp + 0x10]
mov ebp, 2
cmp dword [eax + 0x14], ebp
jle 0x65f441
mov ebx, dword [esp + 0x80]
lea edi, [ebp + 0x1e]
mov esi, eax
mov eax, dword [esi + 0x10]
push ebx
mov eax, dword [edi + eax + 4]
mov eax, dword [eax + 4]
push dword [eax]
call fcn.0065cb00
inc ebp
lea edi, [edi + 0x10]
add esp, 8
cmp ebp, dword [esi + 0x14]
jl 0x65f410
mov esi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x10]
mov byte [eax + 0x4b], cl
mov ebp, 0x6c7304
mov eax, dword [ebx + 4]
push ecx
mov eax, dword [eax + 4]
push dword [eax]
call fcn.0065cb00
add esp, 8
cmp eax, 1
jne 0x65f464
mov ebp, str.exclusive
push ebp
push esi
call fcn.0063c140
add esp, 8
jmp 0x66114a
test edx, edx
je 0x65f528
push edx
call fcn.00667910
add esp, 4
mov ebp, eax
xor ebx, ebx
jmp 0x65f490
cmp ebx, 6
je 0x65f528
mov ecx, dword [ebx*4 + 0x6c304c]
test ecx, ecx
je 0x65f528
push ebp
push ecx
push dword [esp + 0x20]
call fcn.00604d40
add esp, 0xc
test eax, eax
je 0x65f4bd
inc ebx
jmp 0x65f490
cmp ebx, 0xffffffff
je 0x65f52b
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x14]
dec edi
js 0x65f514
mov ebp, edi
shl ebp, 4
mov eax, dword [eax + 0x10]
cmp dword [eax + ebp + 4], 0
je 0x65f506
cmp edi, ecx
je 0x65f4f0
mov eax, dword [esp + 0x88]
cmp dword [eax + 4], 0
jne 0x65f506
push edi
push esi
call fcn.00676930
push ebx
push 1
push edi
push 9
push esi
call fcn.0066bc10
add esp, 0x1c
mov eax, dword [esp + 0x10]
sub ebp, 0x10
dec edi
mov ecx, dword [esp + 0x14]
jns 0x65f4d5
push 1
push 1
push 0x4e
push esi
call fcn.0066bba0
add esp, 0x10
jmp 0x66114a
or ebx, 0xffffffff
cmp dword [edi + 4], 0
jne 0x65f4c2
xor ecx, ecx
mov dword [edi + 4], 1
mov dword [esp + 0x14], ecx
jmp 0x65f4c6
mov eax, dword [ebx + 4]
or ecx, 0xffffffff
mov dword [esp + 0x64], ecx
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0x60], eax
test edx, edx
je 0x65f589
lea eax, [esp + 0x60]
push eax
push edx
call fcn.00647bb0
mov ecx, dword [esp + 0x6c]
add esp, 8
cmp ecx, 0xffffffff
jg 0x65f585
jl 0x65f57e
mov eax, dword [esp + 0x60]
cmp eax, 0xffffffff
jae 0x65f589
or eax, 0xffffffff
or ecx, eax
jmp 0x65f589
mov eax, dword [esp + 0x60]
push ecx
push eax
push edi
call fcn.0065ca70
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0x18
jmp 0x66114a
mov edi, dword [ebx + 4]
test edx, edx
jne 0x65f5bf
push edi
call fcn.00642940
cdq
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0x10
jmp 0x66114a
push edx
call fcn.0062d0b0
mov ebx, eax
mov eax, dword [esp + 0x14]
push ebx
push edi
mov byte [eax + 0x4c], bl
call fcn.00644710
add esp, 0xc
test eax, eax
jne 0x66114a
cmp ebx, 1
je 0x65f5ee
cmp ebx, 2
jne 0x66114a
mov edi, dword [esi + 0x88]
push 0
push 0x6c3520
push 5
push esi
call fcn.0066bdf0
mov edx, dword [esp + 0x24]
lea ecx, [edi + 4]
push edx
push esi
mov dword [eax + 0x30], ecx
lea ecx, [ebx - 1]
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
call fcn.00676930
add esp, 0x18
jmp 0x66114a
test edx, edx
je 0x65f649
lea eax, [esp + 0x50]
push eax
push edx
call fcn.00656c70
add esp, 8
test eax, eax
je 0x65f649
mov edi, dword [esp + 0x50]
test edi, edi
jg 0x65f64e
mov edi, 0x7fffffff
mov ebx, dword [esp + 0x14]
push ebx
push 0
push dword [esp + 0x88]
call fcn.006410b0
push 1
push edi
push 0x43
push esi
call fcn.0066bba0
push ebx
push 0x3c
push esi
call fcn.0066bb40
push 1
push 0x4e
push esi
mov edi, eax
call fcn.0066bb40
push 0xffffffffffffffff
push 1
push 0x50
push esi
call fcn.0066bba0
add esp, 0x44
push edi
push 1
push 0x30
push esi
call fcn.0066bba0
push edi
push esi
call fcn.006736b0
add esp, 0x18
jmp 0x66114a
test edx, edx
jne 0x65f6b9
mov eax, dword [ebx + 0xc]
mov eax, dword [eax + 0x50]
jmp 0x66113e
push edx
call fcn.006403f0
mov ecx, dword [ebx + 0xc]
mov dword [ecx + 0x50], eax
mov eax, dword [ebx + 0xc]
push dword [eax + 0x50]
push dword [ebx + 4]
call fcn.00644780
jmp 0x661147
test edx, edx
jne 0x65f6fb
mov eax, dword [esp + 0x10]
test byte [eax + 0x1c], 0x20
je 0x65f279
push edx
push dword [ebx + 4]
call fcn.00644980
add esp, 8
jmp 0x66113e
lea eax, [esp + 0x80]
mov dword [esp + 0x80], 1
push eax
push edx
call fcn.00656c70
mov esi, dword [esp + 0x88]
add esp, 8
test eax, eax
je 0x65f72e
push esi
push dword [ebx + 4]
call fcn.00644980
add esp, 8
test esi, esi
setne al
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.00656b60
add esp, 8
test al, al
mov eax, dword [esp + 0x10]
je 0x65f75d
or dword [eax + 0x1c], 0x20
push eax
call fcn.0063e1b0
add esp, 4
jmp 0x66114a
and dword [eax + 0x1c], 0xffffffdf
push eax
call fcn.0063e1b0
add esp, 4
jmp 0x66114a
test edx, edx
je 0x65f80f
lea eax, [esp + 0x60]
push eax
push edx
call fcn.00647bb0
mov edx, dword [esp + 0x6c]
add esp, 8
test edx, edx
jg 0x65f7ad
jl 0x65f797
mov ecx, dword [esp + 0x60]
test ecx, ecx
jae 0x65f7b1
mov ecx, dword [0xb266b8]
mov edx, dword [0xb266bc]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
jmp 0x65f7b1
mov ecx, dword [esp + 0x60]
cmp dword [edi + 4], 0
mov eax, dword [esp + 0x10]
jne 0x65f7c1
mov dword [eax + 0x28], ecx
mov dword [eax + 0x2c], edx
mov edi, dword [eax + 0x14]
dec edi
js 0x65f813
mov esi, dword [esp + 0x88]
mov ebx, edi
mov ebp, dword [esp + 0x14]
shl ebx, 4
mov eax, dword [eax + 0x10]
mov eax, dword [ebx + eax + 4]
test eax, eax
je 0x65f7ff
cmp edi, ebp
je 0x65f7ec
cmp dword [esi + 4], 0
jne 0x65f7ff
push edx
push ecx
push eax
call fcn.00644810
mov edx, dword [esp + 0x70]
add esp, 0xc
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x10]
sub ebx, 0x10
dec edi
jns 0x65f7d7
mov esi, dword [esp + 0x2c]
jmp 0x65f813
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x60]
mov dword [esp + 0x60], 0xffffffff
push ecx
push 0x12
push dword [esp + 0x24]
mov dword [esp + 0x70], 0xffffffff
push eax
call fcn.006016f0
add esp, 0x10
test eax, eax
jne 0x65f848
push dword [esp + 0x64]
push dword [esp + 0x64]
jmp 0x661141
mov ebp, dword [esp + 0x10]
cmp eax, 0xc
je 0x66114e
mov ecx, dword [esp + 0x80]
inc dword [ecx + 0x24]
mov dword [ecx + 0xc], eax
jmp 0x66114e
test edx, edx
jne 0x65f878
mov eax, dword [esp + 0x10]
movzx eax, byte [eax + 0x48]
jmp 0x66113e
push edx
push dword [esp + 0x84]
call fcn.0060f440
add esp, 8
jmp 0x66114a
test edx, edx
jne 0x65f8a5
push dword [0xb2df50]
push esi
call fcn.0063c140
add esp, 8
jmp 0x66114a
cmp byte [edx], 0
je 0x65f8e4
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x50]
push ecx
push 1
push edx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x65f8cb
cmp dword [esp + 0x50], eax
jne 0x65f8e4
push str.not_a_writable_directory
push dword [esp + 0x84]
call fcn.00649670
add esp, 8
jmp 0x66114a
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x48], 1
ja 0x65f8fd
push dword [esp + 0x80]
call fcn.0062f2b0
add esp, 4
push dword [0xb2df50]
call fcn.006014a0
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x65f92c
push eax
push 0x6b8fc4
call fcn.00600e30
add esp, 8
mov dword [0xb2df50], eax
jmp 0x66114a
mov dword [0xb2df50], 0
jmp 0x66114a
test edx, edx
jne 0x65f953
push dword [0xb2df54]
push esi
call fcn.0063c140
add esp, 8
jmp 0x66114a
cmp byte [edx], 0
je 0x65f981
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x50]
push ecx
push 1
push edx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x65f8cb
cmp dword [esp + 0x50], eax
je 0x65f8cb
push dword [0xb2df54]
call fcn.006014a0
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x65f9b0
push eax
push 0x6b8fc4
call fcn.00600e30
add esp, 8
mov dword [0xb2df54], eax
jmp 0x66114a
mov dword [0xb2df54], 0
jmp 0x66114a
test edx, edx
jne 0x65f9cd
movzx eax, byte [ebx + 8]
dec eax
jmp 0x66113e
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x47], 0
jne 0x65f9f0
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0x84]
call fcn.00649670
add esp, 8
jmp 0x66114e
cmp dword [esp + 0x14], 1
je 0x66114e
push 1
push 0
push edx
call fcn.0062e170
inc eax
add esp, 0xc
and eax, 7
jne 0x65fa13
mov eax, 1
push ebp
mov byte [ebx + 8], al
mov byte [ebx + 9], 1
call fcn.0063e1b0
add esp, 4
jmp 0x66114e
test edx, edx
jne 0x65fa58
push eax
push esi
call fcn.0063e4b0
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0x18]
mov eax, dword [ebp + 8]
and eax, dword [ecx + 0x1c]
neg eax
sbb eax, eax
neg eax
cdq
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0x14
jmp 0x66114a
mov edi, dword [eax + 8]
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x47], 0
jne 0x65fa6b
and edi, 0xffffbfff
push 0
push edx
call fcn.00656b60
add esp, 8
test al, al
je 0x65fa83
mov eax, dword [esp + 0x10]
or dword [eax + 0x1c], edi
jmp 0x65faaa
mov ecx, dword [esp + 0x10]
mov eax, edi
not eax
and dword [ecx + 0x1c], eax
cmp edi, 0x80000
jne 0x65faaa
mov dword [ecx + 0x1c8], 0
mov dword [ecx + 0x1cc], 0
push 0x97
push esi
call fcn.0066bae0
push dword [esp + 0x18]
call fcn.0063e1b0
jmp 0x661147
test edx, edx
je 0x66114a
push dword [esp + 0x1c]
mov edi, dword [esp + 0x84]
push edx
push 2
push edi
call fcn.0065aab0
mov ebx, eax
add esp, 0x10
mov dword [esp + 0x4c], ebx
test ebx, ebx
je 0x66114a
push ebx
mov dword [esp + 0x84], 0
call fcn.00661920
push dword [esp + 0x18]
mov dword [esp + 0x58], eax
push edi
mov dword [edi + 0x2c], 6
call fcn.00645b30
push ebx
push edi
call fcn.00676a10
mov ebp, dword [ebx + 4]
add esp, 0x14
movsx ebx, word [ebx + 0x2a]
xor edi, edi
test ebx, ebx
jle 0x66114a
mov al, byte [ebp + 0xf]
test al, 2
je 0x65fb41
inc dword [esp + 0x80]
jmp 0x65fbb4
test al, 1
jne 0x65fb49
xor ecx, ecx
jmp 0x65fb6f
mov eax, dword [esp + 0x50]
mov ecx, 1
test eax, eax
je 0x65fb6f
cmp ebx, ecx
jl 0x65fb6f
mov edx, dword [eax + 4]
lea ecx, [ecx]
movsx eax, word [edx]
cmp eax, edi
je 0x65fb6f
inc ecx
add edx, 2
cmp ecx, ebx
jle 0x65fb60
mov eax, dword [ebp + 4]
test eax, eax
je 0x65fb7b
mov eax, dword [eax + 8]
jmp 0x65fb7d
xor eax, eax
push ecx
push eax
xor eax, eax
cmp byte [ebp + 0xc], al
setne al
push eax
push 0x6aad7b
push ebp
call fcn.00645da0
add esp, 8
push eax
push dword [ebp]
mov eax, edi
sub eax, dword [esp + 0x94]
push eax
push str.issisi
push 1
push esi
call fcn.00675030
add esp, 0x24
mov eax, dword [esp + 0x4c]
inc edi
add ebp, 0x10
movsx ebx, word [eax + 0x2a]
cmp edi, ebx
jl 0x65fb31
jmp 0x66114a
test edx, edx
je 0x66114a
push dword [esp + 0x1c]
push edx
push dword [esp + 0x18]
call fcn.0064ec90
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x66114a
mov ebp, dword [esp + 0x34]
cmp dword [ebp + 8], 0
je 0x65fc12
movzx eax, word [ebx + 0x34]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x80]
mov dword [eax + 0x2c], 6
jmp 0x65fc28
movzx eax, word [ebx + 0x32]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x80]
mov dword [eax + 0x2c], 3
push dword [esp + 0x14]
mov eax, dword [ebx + 0xc]
push dword [esp + 0x84]
mov dword [esp + 0x58], eax
call fcn.00645b30
xor edi, edi
add esp, 8
cmp dword [esp + 0x3c], edi
jle 0x66114a
mov edi, edi
mov eax, dword [ebx + 4]
movzx edx, word [eax + edi*2]
test dx, dx
jns 0x65fc60
xor eax, eax
jmp 0x65fc6f
mov eax, dword [esp + 0x50]
movsx ecx, dx
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
push eax
movsx eax, dx
push eax
push edi
push str.iisX
push 1
push esi
call fcn.00675030
add esp, 0x18
cmp dword [ebp + 8], 0
je 0x65fcb5
movzx eax, word [ebx + 0x32]
xor ecx, ecx
cmp edi, eax
mov eax, dword [ebx + 0x20]
setl cl
push ecx
push dword [eax + edi*4]
mov eax, dword [ebx + 0x1c]
movzx eax, byte [eax + edi]
push eax
push str.isiX
push 4
push esi
call fcn.00675030
add esp, 0x18
mov eax, dword [esp + 0x80]
push dword [eax + 0x2c]
push 1
push 0x4e
push esi
call fcn.0066bba0
inc edi
add esp, 0x10
cmp edi, dword [esp + 0x3c]
jl 0x65fc50
jmp 0x66114a
test edx, edx
je 0x66114a
push dword [esp + 0x1c]
push edx
push dword [esp + 0x18]
call fcn.0064ed50
mov edi, eax
add esp, 0xc
test edi, edi
je 0x66114a
mov eax, dword [esp + 0x80]
mov ebp, dword [esp + 0x14]
push ebp
push eax
mov dword [eax + 0x2c], 5
call fcn.00645b30
mov edi, dword [edi + 8]
add esp, 8
xor ebx, ebx
test edi, edi
je 0x66114a
mov dword [esp + 0x60], 0x6c7410
mov dword [esp + 0x64], 0x6c7414
mov dword [esp + 0x68], 0x6c3fa4
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0x64]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.00675030
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x65fd40
jmp 0x66114a
mov eax, dword [esp + 0x80]
xor edi, edi
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], edi
jle 0x66114e
xor ebx, ebx
jmp 0x65fda0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x65fdc6
push eax
call fcn.00642990
push eax
push dword [ecx + ebx]
push edi
push 0x6c7420
push 1
push esi
call fcn.00675030
add esp, 0x1c
inc edi
add ebx, 0x10
cmp edi, dword [ebp + 0x14]
jl 0x65fda0
jmp 0x66114e
mov eax, dword [esp + 0x80]
xor ebx, ebx
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov edi, dword [edi + 0x17c]
test edi, edi
je 0x66114a
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x6c7424
push 1
push esi
call fcn.00675030
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x65fdf6
jmp 0x66114a
test edx, edx
je 0x66114a
push dword [esp + 0x1c]
push edx
push dword [esp + 0x18]
call fcn.0064ed50
add esp, 0xc
mov dword [esp + 0x50], eax
test eax, eax
je 0x66114a
mov edi, dword [eax + 0x10]
test edi, edi
je 0x66114a
mov eax, dword [esp + 0x80]
xor ebp, ebp
push dword [esp + 0x14]
mov dword [esp + 0x40], ebp
push eax
mov dword [eax + 0x2c], 8
call fcn.00645b30
add esp, 8
lea esp, [esp]
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x65fed8
lea ebp, [edi + 0x24]
lea ebx, [ebx]
movzx eax, byte [edi + 0x19]
push str.NONE
push eax
call fcn.00609900
add esp, 4
push eax
movzx eax, byte [edi + 0x1a]
push eax
call fcn.00609900
mov ecx, dword [ebp]
add esp, 4
add ecx, ecx
push eax
push dword [ebp + 4]
mov eax, dword [esp + 0x60]
mov eax, dword [eax + 4]
push dword [eax + ecx*8]
push dword [edi + 8]
push ebx
push dword [esp + 0x58]
push str.iissssss
push 1
push esi
call fcn.00675030
inc ebx
lea ebp, [ebp + 8]
add esp, 0x2c
cmp ebx, dword [edi + 0x14]
jl 0x65fe80
mov ebp, dword [esp + 0x3c]
mov edi, dword [edi + 4]
inc ebp
mov dword [esp + 0x3c], ebp
test edi, edi
jne 0x65fe70
jmp 0x66114a
mov edx, dword [esp + 0x80]
push dword [esp + 0x14]
push edx
mov eax, dword [edx + 0x2c]
lea ecx, [eax + 1]
mov dword [esp + 0x2c], ecx
lea ebx, [eax + 6]
lea ecx, [eax + 5]
mov dword [esp + 0x44], ebx
mov dword [esp + 0x58], ecx
mov dword [edx + 0x2c], ebx
call fcn.00645b30
mov eax, dword [esp + 0x18]
add esp, 8
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ebp + 0xc]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x66114a
mov edi, edi
mov ecx, dword [esp + 0x18]
mov ebp, dword [esp + 0x80]
test ecx, ecx
je 0x65ff55
push dword [esp + 0x1c]
push ecx
push 0
push ebp
call fcn.0065aab0
add esp, 0x10
mov edi, eax
xor eax, eax
jmp 0x65ff5a
mov edi, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x44], eax
mov dword [esp + 0x38], edi
test edi, edi
je 0x66026b
cmp dword [edi + 0x10], 0
je 0x66026b
push dword [edi]
push 0
push dword [edi + 0x1c]
push dword [esp + 0x20]
push ebp
call fcn.00667af0
movsx eax, word [edi + 0x2a]
add esp, 0x14
add eax, ebx
cmp eax, dword [ebp + 0x2c]
jle 0x65ff96
mov dword [ebp + 0x2c], eax
push 0x68
push edi
push dword [esp + 0x1c]
push 0
push ebp
call fcn.0065b970
push dword [edi]
push dword [esp + 0x3c]
push esi
call fcn.00673b40
mov ebx, dword [edi + 0x10]
add esp, 0x20
mov ebp, 1
test ebx, ebx
je 0x660074
push dword [esp + 0x1c]
push dword [ebx + 8]
push dword [esp + 0x18]
call fcn.0064ed50
mov edi, eax
add esp, 0xc
test edi, edi
je 0x660064
push dword [edi]
mov dword [esp + 0x24], 0
push 0
push dword [edi + 0x1c]
push dword [esp + 0x20]
push dword [esp + 0x90]
call fcn.00667af0
push 0
lea eax, [esp + 0x38]
push eax
push ebx
push edi
push dword [esp + 0xa4]
call fcn.00650030
add esp, 0x28
test eax, eax
jne 0x66114a
mov eax, dword [esp + 0x20]
test eax, eax
jne 0x660041
push 0x68
push edi
push dword [esp + 0x1c]
push ebp
push dword [esp + 0x90]
call fcn.0065b970
add esp, 0x14
jmp 0x660064
push dword [esp + 0x14]
push dword [eax + 0x2c]
push ebp
push 0x68
push esi
call fcn.0066bc10
push dword [esp + 0x34]
push dword [esp + 0x98]
call fcn.00675e40
add esp, 0x1c
mov ebx, dword [ebx + 4]
inc ebp
test ebx, ebx
jne 0x65ffc4
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x80]
cmp dword [eax + 0x28], ebp
jge 0x660083
mov dword [eax + 0x28], ebp
push 0
push 0x25
push esi
call fcn.0066bb40
mov ebp, dword [edi + 0x10]
add esp, 0xc
mov dword [esp + 0x2c], 1
mov ebx, eax
mov dword [esp + 0x48], ebx
test ebp, ebp
je 0x66024b
lea esp, [esp]
push dword [esp + 0x1c]
push dword [ebp + 8]
push dword [esp + 0x18]
call fcn.0064ed50
xor ebx, ebx
mov dword [esp + 0x58], eax
add esp, 0xc
mov dword [esp + 0x20], 0
mov dword [esp + 0x34], ebx
test eax, eax
je 0x6600f8
lea ecx, [esp + 0x34]
push ecx
lea ecx, [esp + 0x24]
push ecx
push ebp
push eax
push dword [esp + 0x90]
call fcn.00650030
mov ebx, dword [esp + 0x48]
add esp, 0x14
push esi
call fcn.00673b60
xor edi, edi
mov dword [esp + 0x34], eax
add esp, 4
cmp dword [ebp + 0x14], edi
jle 0x66015a
mov ebx, dword [esp + 0x3c]
lea eax, [ebp + 0x24]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x660124
mov eax, dword [ecx + edi*4]
jmp 0x660126
mov eax, dword [eax]
push ebx
push eax
push 0
push dword [esp + 0x44]
push esi
call fcn.0064a7e0
push dword [esp + 0x44]
push ebx
push 0x32
push esi
call fcn.0066bba0
mov eax, dword [esp + 0x64]
inc edi
add eax, 8
add esp, 0x24
inc ebx
mov dword [esp + 0x40], eax
cmp edi, dword [ebp + 0x14]
jl 0x660117
mov ebx, dword [esp + 0x34]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x6601a0
push dword [ebp + 0x14]
push eax
push dword [esp + 0x18]
call fcn.00657f10
mov edi, dword [esp + 0x5c]
add esp, 8
push eax
push edi
push dword [ebp + 0x14]
push dword [esp + 0x4c]
push 0x63
push esi
call fcn.0066bc70
push 0
push edi
mov edi, dword [esp + 0x54]
push edi
push dword [esp + 0x54]
push 0x1e
push esi
call fcn.0066bd50
add esp, 0x34
jmp 0x6601d5
cmp dword [esp + 0x4c], 0
je 0x6601d1
push dword [esp + 0x3c]
mov eax, dword [esi + 0x88]
add eax, 2
push eax
push dword [esp + 0x34]
push 0x1f
push esi
call fcn.0066bc10
mov edi, dword [esp + 0x44]
push edi
push esi
call fcn.00673050
add esp, 0x1c
jmp 0x6601d5
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x38]
test byte [eax + 0x24], 0x20
mov eax, dword [esp + 0x24]
jne 0x6601eb
inc eax
push eax
push 0
push 0x7b
jmp 0x6601f1
inc eax
push eax
push 0
push 0x46
push esi
call fcn.0066bba0
mov eax, dword [esp + 0x3c]
add esp, 0x10
dec eax
push eax
push dword [ebp + 8]
mov eax, dword [esp + 0x2c]
push 0x6c743c
add eax, 2
push eax
push esi
call fcn.00675030
push 4
push dword [esp + 0x3c]
push 0x4e
push esi
call fcn.0066bba0
push edi
push esi
call fcn.00675920
push ebx
push dword [esp + 0x40]
call fcn.00647820
inc dword [esp + 0x60]
add esp, 0x34
mov ebp, dword [ebp + 4]
test ebp, ebp
jne 0x6600b0
mov ebx, dword [esp + 0x48]
lea eax, [ebx + 1]
push eax
push 0
push 7
push esi
call fcn.0066bba0
push ebx
push esi
call fcn.006736b0
mov ebx, dword [esp + 0x54]
add esp, 0x18
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x65ff30
jmp 0x66114a
test edx, edx
je 0x66114a
push 0
push edx
call fcn.00656b60
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.00661f20
add esp, 0x10
jmp 0x66114a
mov eax, dword [esp + 0x28]
xor ecx, ecx
movzx eax, byte [eax]
cmp byte [eax + 0x6c13b0], 0x71
sete cl
cmp dword [edi], 0
mov dword [esp + 0x38], ecx
jne 0x6602c2
or edi, 0xffffffff
mov dword [esp + 0x14], edi
jmp 0x6602c6
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x80]
mov ebp, 0x64
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebp
mov dword [ebx + 0x2c], 6
test edx, edx
je 0x660308
lea eax, [esp + 0x44]
push eax
push edx
call fcn.00656c70
mov ebp, dword [esp + 0x4c]
add esp, 8
mov dword [esp + 0x40], ebp
test ebp, ebp
jg 0x660308
mov ebp, 0x64
mov dword [esp + 0x40], ebp
push 1
lea eax, [ebp - 1]
push eax
push 0x43
push esi
call fcn.0066bba0
mov eax, dword [esp + 0x20]
xor ecx, ecx
add esp, 0x10
mov dword [esp + 0x34], ecx
cmp dword [eax + 0x14], ecx
jle 0x660c24
lea esp, [esp]
xor ebp, ebp
test edi, edi
js 0x66033e
cmp ecx, edi
jne 0x660c12
push ecx
push ebx
call fcn.00645b30
mov eax, dword [esp + 0x18]
add esp, 8
mov ecx, dword [esp + 0x34]
xor edx, edx
shl ecx, 4
mov dword [esp + 0x50], ecx
mov eax, dword [eax + 0x10]
mov ebx, dword [ecx + eax + 0xc]
add ebx, 8
mov dword [esp + 0x48], ebx
mov edi, dword [ebx + 8]
test edi, edi
je 0x660398
mov edi, edi
mov eax, dword [edi + 8]
test byte [eax + 0x24], 0x20
jne 0x66037a
inc edx
mov eax, dword [eax + 8]
xor ecx, ecx
test eax, eax
je 0x66038c
mov eax, dword [eax + 0x14]
inc edx
inc ecx
test eax, eax
jne 0x660383
cmp ecx, ebp
jle 0x660392
mov ebp, ecx
mov edi, dword [edi]
test edi, edi
jne 0x660370
lea eax, [edx*4 + 4]
push 0
push eax
push dword [esp + 0x18]
call fcn.006478f0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x660c20
mov ebx, dword [ebx + 8]
xor edx, edx
test ebx, ebx
je 0x6603ec
mov ecx, dword [ebx + 8]
test byte [ecx + 0x24], 0x20
jne 0x6603d1
mov eax, dword [ecx + 0x1c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x6603e6
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x6603d8
mov ebx, dword [ebx]
test ebx, ebx
jne 0x6603c1
mov eax, dword [esp + 0x80]
lea ecx, [ebp + 8]
mov dword [edi], edx
mov eax, dword [eax + 0x2c]
cmp eax, ecx
jg 0x660401
mov eax, ecx
mov ebp, dword [esp + 0x80]
push 0xfffffffffffffff1
push edi
push 1
push edx
push 2
push 0x8e
push esi
mov dword [ebp + 0x2c], eax
mov byte [ebp + 0x13], 0
mov dword [ebp + 0x1c], 0
call fcn.0066bc70
mov eax, dword [esp + 0x50]
movzx eax, al
push eax
push esi
call fcn.0066c160
push 2
push 0x32
push esi
call fcn.0066bb40
mov edx, dword [esp + 0x40]
add esp, 0x30
mov edi, eax
mov eax, dword [esp + 0x50]
mov ecx, dword [edx + 0x10]
push 0xfffffffffffffff9
push dword [eax + ecx]
push str._in_database__s__n
push edx
call fcn.0065af10
add esp, 0xc
push eax
push 0
push 3
push 0
push 0x61
push esi
call fcn.0066bc70
push 3
push 3
push 2
push 0x5d
push esi
call fcn.0066bc10
push esi
call fcn.0062f110
push edi
push esi
call fcn.006736b0
mov eax, dword [esp + 0x84]
add esp, 0x3c
mov ebx, dword [eax + 8]
mov dword [esp + 0x50], ebx
test ebx, ebx
je 0x660c04
jmp 0x6604b0
mov ebx, dword [ebx + 8]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x48], 0
mov dword [esp + 0x30], 0xffffffff
cmp dword [ebx + 0x1c], 1
jl 0x660be9
test byte [ebx + 0x24], 0x20
jne 0x6604e1
mov dword [esp + 0x3c], 0
jmp 0x6604ee
push ebx
call fcn.00661920
add esp, 4
mov dword [esp + 0x3c], eax
push ebp
call fcn.00649e60
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x28]
push eax
push 0
push 1
push 0
push 0x68
push ebx
push ebp
call fcn.0065ba60
push 7
push 0
push 0x43
push esi
call fcn.0066bba0
mov edi, dword [ebx + 8]
add esp, 0x34
test edi, edi
je 0x66053e
mov ebx, 8
push ebx
push 0
push 0x43
push esi
call fcn.0066bba0
mov edi, dword [edi + 0x14]
add esp, 0x10
inc ebx
test edi, edi
jne 0x660528
push 0
push dword [esp + 0x24]
push 0x25
push esi
call fcn.0066bba0
push 1
push 7
push 0x50
push esi
call fcn.0066bba0
mov edi, dword [esp + 0x44]
add esp, 0x20
mov dword [esp + 0x60], eax
xor ebx, ebx
xor eax, eax
cmp ax, word [edi + 0x2a]
jge 0x660600
xor ebp, ebp
movsx eax, word [edi + 0x28]
cmp ebx, eax
je 0x6605f0
mov eax, dword [edi + 4]
cmp byte [eax + ebp + 0xc], 0
je 0x6605f0
push 3
push ebx
push dword [esp + 0x28]
push edi
push esi
call fcn.0064a7e0
push pe_nt_image_headers32
push esi
call fcn.0066c160
push 3
push 0x33
push esi
call fcn.0066bb40
mov edi, eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 4]
push dword [ecx + ebp]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x44]
call fcn.0065af10
push 0xfffffffffffffff9
push eax
push 0
push 3
push 0
push 0x61
push esi
call fcn.0066bc70
add esp, 0x54
push esi
call fcn.0062f110
push edi
push esi
call fcn.006736b0
mov edi, dword [esp + 0x30]
add esp, 0xc
movsx eax, word [edi + 0x2a]
inc ebx
add ebp, 0x10
cmp ebx, eax
jl 0x660573
mov eax, dword [edi + 0x18]
test eax, eax
je 0x660725
mov ebx, dword [esp + 0x10]
test dword [ebx + 0x1c], 0x200
jne 0x660725
push 0
push eax
push ebx
call fcn.0064dbe0
add esp, 0xc
mov ebp, eax
cmp byte [ebx + 0x49], 0
mov dword [esp + 0x1c], ebp
jne 0x660717
push esi
call fcn.00673b60
push esi
mov dword [esp + 0x4c], eax
call fcn.00673b60
mov ecx, dword [esp + 0x28]
mov ebx, eax
mov eax, dword [esp + 0x88]
inc ecx
add esp, 8
mov dword [esp + 0x54], ebx
inc dword [eax + 0x3c]
mov dword [eax + 0x38], ecx
mov edi, dword [ebp]
dec edi
test edi, edi
jle 0x6606ab
mov esi, dword [esp + 0x44]
lea eax, [edi + edi*2]
lea ebx, [eax*8 + 4]
add ebx, ebp
mov ebp, dword [esp + 0x80]
push 0
push esi
push dword [ebx]
push ebp
call fcn.0064cff0
dec edi
lea ebx, [ebx - 0x18]
add esp, 0x10
test edi, edi
jg 0x660682
mov esi, dword [esp + 0x2c]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x54]
mov eax, dword [esp + 0x80]
push 0x10
push ebx
push dword [ebp + 4]
push eax
call fcn.0064d360
push dword [esp + 0x54]
push esi
call fcn.00675920
mov eax, dword [esp + 0x98]
mov edi, dword [esp + 0x3c]
mov dword [eax + 0x38], 0
push dword [edi]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x30]
call fcn.0065af10
push 0xfffffffffffffff9
push eax
push 0
push 3
push 0
push 0x61
push esi
call fcn.0066bc70
add esp, 0x40
push esi
call fcn.0062f110
push ebx
push esi
call fcn.00675920
push dword [esp + 0x8c]
call fcn.00649ee0
mov ebx, dword [esp + 0x20]
add esp, 0x10
test ebp, ebp
je 0x660725
push ebp
push ebx
call fcn.006186f0
add esp, 8
mov ebx, dword [esp + 0x38]
test ebx, ebx
jne 0x660a34
movsx eax, word [edi + 0x2a]
push 3
dec eax
push eax
push dword [esp + 0x28]
push 0x60
push esi
call fcn.0066bc10
mov eax, dword [esi + 0x88]
add esp, 0x14
test eax, eax
jle 0x660762
lea ecx, [eax + eax*4]
mov edx, pe_nt_image_headers32
mov eax, dword [esi + 0x58]
mov word [eax + ecx*4 - 0x12], dx
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x660a30
mov ecx, dword [esp + 0x4c]
mov eax, 8
sub eax, ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x54], eax
mov edi, dword [esi + 0xc]
mov ebp, dword [edi + 0x44]
lea eax, [ebp + 1]
mov dword [edi + 0x44], eax
lea eax, [ebp - 1]
test ebp, eax
jne 0x6607b1
push 0
lea eax, [ebp*8 + 4]
push eax
push dword [edi + 0x48]
push dword [edi]
call fcn.00647a80
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [edi + 0x48], eax
mov eax, dword [edi + 0x48]
test eax, eax
je 0x6607bf
mov dword [eax + ebp*4], 0xffffffff
cmp dword [esp + 0x3c], ebx
je 0x660a20
push dword [esp + 0x30]
lea eax, [esp + 0x60]
push dword [esp + 0x4c]
push eax
push 0
push 0
push dword [esp + 0x34]
push ebx
push dword [esp + 0x9c]
call fcn.006563c0
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x3c]
add ecx, edi
push 1
push ecx
push 0x50
push esi
mov dword [esp + 0x60], eax
mov dword [esp + 0x78], ebx
call fcn.0066bba0
movzx ecx, word [ebx + 0x34]
or eax, 0xffffffff
push ecx
push dword [esp + 0x64]
sub eax, ebp
push eax
push edi
push 0x1e
push esi
call fcn.0066bd50
add esp, 0x48
mov edi, eax
push 0
push str.row
push 0
push 3
push 0
push 0x61
push esi
call fcn.0066bc70
push 3
push 3
push 7
push 0x5d
push esi
call fcn.0066bc10
push 0
push str._missing_from_index
push 0
push 4
push 0
push 0x61
push esi
call fcn.0066bc70
add esp, 0x4c
push 3
push 3
push 4
push 0x5d
push esi
call fcn.0066bc10
push 0
push dword [ebx]
push 0
push 4
push 0
push 0x61
push esi
call fcn.0066bc70
push 3
push 3
push 4
push 0x5d
push esi
mov dword [esp + 0x88], eax
call fcn.0066bc10
add esp, 0x44
push esi
call fcn.0062f110
add esp, 4
mov dword [esp + 0x58], eax
mov edx, dword [esi + 0x88]
test edi, edi
jns 0x6608b2
lea edi, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x49], 0
je 0x6608c1
mov eax, 0xb2e43c
jmp 0x6608ca
mov eax, dword [esi + 0x58]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
cmp byte [ebx + 0x36], 0
je 0x6609ba
push esi
call fcn.00673b60
mov ebp, eax
add esp, 4
xor eax, eax
xor edi, edi
cmp ax, word [ebx + 0x32]
jae 0x660927
lea esp, [esp]
mov eax, dword [ebx + 4]
movsx ecx, word [eax + edi*2]
test ecx, ecx
js 0x66090b
mov eax, dword [esp + 0x24]
add ecx, ecx
mov eax, dword [eax + 4]
cmp byte [eax + ecx*8 + 0xc], 0
jne 0x66091e
mov eax, dword [esp + 0x30]
push ebp
add eax, edi
push eax
push 0x32
push esi
call fcn.0066bba0
add esp, 0x10
movzx eax, word [ebx + 0x32]
inc edi
cmp edi, eax
jl 0x6608f0
push dword [esp + 0x1c]
push 7
push esi
call fcn.0066bb40
push ebp
push esi
mov edi, eax
call fcn.00673050
mov edx, dword [esi + 0x88]
add esp, 0x14
test edi, edi
jns 0x66094c
lea edi, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x49], 0
je 0x66095b
mov eax, 0xb2e43c
jmp 0x660964
mov eax, dword [esi + 0x58]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
movzx eax, word [ebx + 0x32]
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x28]
push 0x27
push esi
call fcn.0066bd50
push 0
push str.non_unique_entry_in_index
push 0
push 3
push 0
push 0x61
push esi
call fcn.0066bc70
push dword [esp + 0x78]
push esi
call fcn.00673050
mov eax, dword [esi + 0xc]
add esp, 0x3c
mov ecx, dword [eax + 0x48]
test ecx, ecx
je 0x6609ba
lea eax, [ebp*4 + 4]
sub ecx, eax
mov eax, dword [esi + 0x88]
mov dword [ecx], eax
mov ecx, dword [esp + 0x58]
mov edx, dword [esi + 0x88]
test ecx, ecx
jns 0x6609cb
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x49], 0
je 0x6609da
mov eax, 0xb2e43c
jmp 0x6609e3
mov eax, dword [esi + 0x58]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov edi, dword [esp + 0x5c]
mov dword [eax + 8], edx
test edi, edi
je 0x660a1c
mov ebp, dword [esp + 0x80]
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + 0x48]
test ecx, ecx
je 0x660a13
lea eax, [edi*4 + 4]
sub ecx, eax
mov eax, dword [edx + 0x88]
mov dword [ecx], eax
push ebp
call fcn.00649ee0
add esp, 4
mov ecx, dword [esp + 0x1c]
mov ebx, dword [ebx + 0x14]
inc ecx
mov dword [esp + 0x1c], ecx
test ebx, ebx
jne 0x660780
mov ebx, dword [esp + 0x38]
mov edi, dword [esp + 0x60]
push edi
push dword [esp + 0x24]
push 7
push esi
call fcn.0066bba0
mov edx, dword [esi + 0x88]
lea ecx, [edi - 1]
add esp, 0x10
test ecx, ecx
jns 0x660a58
lea ecx, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x49], 0
je 0x660a67
mov eax, 0xb2e43c
jmp 0x660a70
mov eax, dword [esi + 0x58]
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
test ebx, ebx
jne 0x660be2
push ebx
push str.wrong__of_entries_in_index
push ebx
push 2
push ebx
push 0x61
push esi
call fcn.0066bc70
mov eax, dword [esp + 0x40]
add esp, 0x1c
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x660be2
mov eax, dword [esp + 0x3c]
mov ebp, 8
cmp eax, ebx
je 0x660bd6
mov eax, dword [esp + 0x4c]
add eax, 0xfffffff8
push 3
add eax, ebp
push eax
push 0x64
push esi
call fcn.0066bba0
mov eax, dword [esi + 0xc]
add esp, 0x10
mov edi, dword [esi + 0x88]
cmp dword [eax + 0x30], edi
jg 0x660ae9
push 3
push 0
push ebp
push 0x35
push esi
call fcn.0062e2b0
add esp, 0x14
mov edi, eax
jmp 0x660b1b
lea eax, [edi + 1]
mov dword [esi + 0x88], eax
lea ecx, [edi + edi*4]
mov eax, dword [esi + 0x58]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], ebp
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi + 0x88]
test eax, eax
jle 0x660b35
lea ecx, [eax + eax*4]
mov edx, 0x90
mov eax, dword [esi + 0x58]
mov word [eax + ecx*4 - 0x12], dx
push 0
push dword [ebx]
push 0
push 4
push 0
push 0x61
push esi
call fcn.0066bc70
mov eax, dword [esi + 0xc]
add esp, 0x1c
mov ecx, dword [esi + 0x88]
cmp dword [eax + 0x30], ecx
jg 0x660b6b
push 3
push 2
push 4
push 0x5d
push esi
call fcn.0062e2b0
add esp, 0x14
jmp 0x660ba1
lea eax, [ecx + 1]
mov dword [esi + 0x88], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x58]
mov dword [eax + ecx*4], 0x5d
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 2
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.0062f110
mov edx, dword [esi + 0x88]
add esp, 4
test edi, edi
jns 0x660bb7
lea edi, [edx - 1]
mov eax, dword [esi]
cmp byte [eax + 0x49], 0
je 0x660bc6
mov eax, 0xb2e43c
jmp 0x660bcf
mov eax, dword [esi + 0x58]
lea ecx, [edi + edi*4]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x3c]
mov ebx, dword [ebx + 0x14]
inc ebp
test ebx, ebx
jne 0x660aa8
mov ebp, dword [esp + 0x80]
mov ebx, dword [esp + 0x50]
mov ebx, dword [ebx]
mov dword [esp + 0x50], ebx
test ebx, ebx
jne 0x6604b0
mov ebx, dword [esp + 0x80]
jmp 0x660c06
mov ebx, ebp
mov ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, dword [eax + 0x14]
jl 0x660330
mov ebp, dword [esp + 0x40]
push 0
push 0x6c0f34
push 7
push esi
call fcn.0066bdf0
add esp, 0x10
test eax, eax
je 0x660c67
mov edx, dword [str.database_disk_image_is_malformed]
mov ecx, 1
sub ecx, ebp
mov byte [eax + 0x29], 0xff
mov dword [eax + 8], ecx
mov ecx, str.unknown_error
mov dword [eax + 0x38], 0x6c74e8
mov byte [eax + 0x65], 0xff
test edx, edx
je 0x660c64
mov ecx, edx
mov dword [eax + 0x74], ecx
mov eax, dword [esi]
mov ecx, 0xb2e43c
mov edx, dword [esi + 0x88]
cmp byte [eax + 0x49], 0
jne 0x660c7d
mov ecx, dword [esi + 0x58]
lea eax, [edx - 2]
mov dword [ecx + 0xc], eax
jmp 0x66114a
test edx, edx
jne 0x660cbf
mov ebx, dword [esp + 0x80]
push ebx
call fcn.00661a00
add esp, 4
test eax, eax
jne 0x66114a
mov eax, dword [ebx]
movzx eax, byte [eax + 0x46]
push dword [eax*8 + 0x6c0f50]
push esi
call fcn.0063c140
add esp, 8
jmp 0x66114a
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x10]
mov eax, dword [edi + 0xc]
movzx eax, word [eax + 0x4e]
test al, 1
je 0x660cd9
test al, 4
je 0x66114a
mov eax, dword [str.UTF8]
mov esi, 0x6c0f50
test eax, eax
je 0x660d2e
push eax
push edx
call fcn.006678a0
add esp, 8
test eax, eax
je 0x660d05
mov eax, dword [esi + 8]
add esi, 8
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x660ce7
jmp 0x660d2a
mov al, byte [esi + 4]
movzx ecx, al
test al, al
jne 0x660d14
mov ecx, 2
mov eax, dword [esp + 0x10]
mov byte [eax + 0x46], cl
mov eax, dword [edi + 0xc]
mov byte [eax + 0x4d], cl
cmp dword [esi], 0
jne 0x66114a
mov edx, dword [esp + 0x18]
push edx
push str.unsupported_encoding:__s
push dword [esp + 0x88]
call fcn.00649670
jmp 0x661147
mov ebx, dword [esp + 0x14]
mov edi, dword [eax + 8]
push ebx
push esi
call fcn.00676930
add esp, 8
cmp dword [esp + 0x18], 0
je 0x660d95
mov ebp, dword [esp + 0x34]
test byte [ebp + 5], 8
jne 0x660d95
push 0
push 0x6c0fe8
push 2
push esi
call fcn.0066bdf0
push dword [esp + 0x28]
mov esi, eax
mov dword [esi + 4], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], edi
call fcn.006403f0
add esp, 0x14
mov dword [esi + 0x20], eax
jmp 0x66114a
push 0
push 0x6c1000
push 3
push esi
call fcn.0066bdf0
add esp, 0x10
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x20], edi
and dword [esi + 0x94], 0xffffffdf
jmp 0x66114a
mov eax, dword [esp + 0x80]
xor edi, edi
push edi
mov dword [eax + 0x2c], 1
call fcn.005fb000
add esp, 4
test eax, eax
je 0x660e03
lea esp, [esp]
push eax
push 1
push esi
inc edi
call fcn.00673b40
push 1
push 1
push 0x4e
push esi
call fcn.0066bba0
push edi
call fcn.005fb000
add esp, 0x20
test eax, eax
jne 0x660de0
and dword [esi + 0x94], 0xffffffdf
jmp 0x66114a
cmp dword [edi], 0
mov ebx, dword [esp + 0x14]
jne 0x660e1d
mov ebx, 0xa
xor edi, edi
test edx, edx
je 0x660e6c
push str.full
push edx
call fcn.006678a0
add esp, 8
test eax, eax
jne 0x660e3a
lea edi, [eax + 1]
jmp 0x660e6c
mov ebp, dword [esp + 0x18]
push str.restart
push ebp
call fcn.006678a0
add esp, 8
test eax, eax
jne 0x660e55
lea edi, [eax + 2]
jmp 0x660e6c
push str.truncate
push ebp
call fcn.006678a0
add esp, 8
test eax, eax
jne 0x660e6c
mov edi, 3
mov eax, dword [esp + 0x80]
push 1
push edi
push ebx
push 8
push esi
mov dword [eax + 0x2c], 3
call fcn.0066bc10
push 3
push 1
push 0x4e
push esi
call fcn.0066bba0
add esp, 0x24
jmp 0x66114a
test edx, edx
je 0x660eb1
push edx
call fcn.006403f0
push eax
push dword [esp + 0x18]
call fcn.00605610
add esp, 0xc
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xe4], 0x678120
jne 0x65f279
mov eax, dword [eax + 0xe8]
jmp 0x66113e
push dword [esp + 0x10]
call fcn.005fb310
add esp, 4
jmp 0x66114a
test edx, edx
je 0x660eff
push edx
call fcn.006403f0
mov ecx, eax
add esp, 4
mov dword [esp + 0x40], ecx
test cl, 2
je 0x66114a
jmp 0x660f07
mov dword [esp + 0x40], 0xfffe
mov ecx, dword [esp + 0x80]
mov edi, dword [esp + 0x14]
mov eax, dword [ecx + 0x28]
mov dword [esp + 0x50], eax
inc eax
cmp dword [esp + 0x1c], 0
mov dword [ecx + 0x28], eax
je 0x660f2c
mov eax, edi
mov dword [esp + 0x3c], eax
jmp 0x660f40
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x3c], eax
cmp edi, eax
jg 0x66107e
cmp edi, 1
je 0x66106a
push edi
push ecx
call fcn.00645b30
mov ecx, dword [esp + 0x18]
add esp, 8
mov eax, dword [ecx + 0x10]
mov eax, dword [eax + ebp + 0xc]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x66105f
lea esp, [esp]
mov edi, dword [ebx + 8]
test dword [edi + 0x24], 0x100
je 0x661051
mov ax, word [edi + 0x2c]
add ax, 0x2e
movzx ebp, ax
mov eax, dword [edi + 8]
test eax, eax
je 0x660f9f
test byte [eax + 0x38], 0x80
je 0x660fe5
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x660f92
test bp, bp
je 0x660fe5
push 0x68
push edi
push dword [esp + 0x1c]
push dword [esp + 0x5c]
push dword [esp + 0x90]
call fcn.0065b970
mov ecx, dword [esp + 0x54]
movsx eax, bp
and ecx, 1
push eax
mov eax, dword [esi + 0x88]
add ecx, 2
add eax, ecx
push eax
push dword [esp + 0x6c]
push 0x22
push esi
call fcn.0066bc10
mov ecx, dword [esp + 0x38]
add esp, 0x28
push dword [edi]
mov eax, dword [ecx + 0x10]
mov ebp, dword [esp + 0x50]
push dword [eax + ebp]
push str.ANALYZE___w_.__w_
push ecx
call fcn.0065af10
add esp, 0x10
mov edx, eax
test byte [esp + 0x40], 1
je 0x661036
push dword [esp + 0x80]
call fcn.00656e50
push 0xfffffffffffffff9
push edx
push 0
mov edi, eax
push edi
push 0
push 0x61
push esi
call fcn.0066bc70
push 1
push edi
push 0x4e
push esi
call fcn.0066bba0
add esp, 0x30
jmp 0x66104d
push 0xfffffffffffffff9
push edx
push 0
push 0
push 0
push 0x88
push esi
call fcn.0066bc70
add esp, 0x1c
mov ecx, dword [esp + 0x10]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x660f70
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x3c]
inc edi
add ebp, 0x10
mov dword [esp + 0x14], edi
mov dword [esp + 0x4c], ebp
cmp edi, eax
jle 0x660f40
push 0x97
push esi
call fcn.0066bae0
add esp, 8
jmp 0x66114a
test edx, edx
je 0x6610b7
lea eax, [esp + 0x60]
push eax
push edx
call fcn.00647bb0
add esp, 8
test eax, eax
jne 0x6610b7
push dword [esp + 0x64]
push dword [esp + 0x64]
call fcn.005fb3b0
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call fcn.005fb3b0
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0x14
jmp 0x66114a
test edx, edx
je 0x661111
lea eax, [esp + 0x60]
push eax
push edx
call fcn.00647bb0
add esp, 8
test eax, eax
jne 0x661111
cmp dword [esp + 0x64], eax
jl 0x661111
mov eax, dword [esp + 0x60]
jg 0x6610f6
test eax, eax
jb 0x661111
and eax, 0x7fffffff
jl 0x661111
cmp eax, 8
jle 0x661107
mov eax, 8
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x90], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x90]
jmp 0x66113e
test edx, edx
je 0x661134
push edx
call fcn.006403f0
push eax
push dword [esp + 0x18]
call fcn.00600140
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1b4]
cdq
push edx
push eax
push esi
call fcn.0063c0a0
add esp, 0xc
mov ebp, dword [esp + 0x10]
push dword [esp + 0x28]
push ebp
call fcn.00647820
push dword [esp + 0x20]
push dword [esp + 0x1c]
call fcn.00647820
add esp, 0x10
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x6c
ret